一、Nginx 简介
①、Nginx 是一个高性能的HTTP和反向代理服务器;
②、特点是占有的内存少,并发能力强,事实上Nginx的并发能力确实是在同类型的网页服务器中表现较好;
③、Nginx专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率,能经受高负载的考验,有报告表明能支持高达 50000个并发连接数。
1、反向代理
(1)、正向代理:
在客户端(浏览器) 配置代理服务器,通过代理服务器进行互联网访问。
(2)、反向代理:
我们只需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。
2、负载均衡:
单个服务器解决不了,我们增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负载均衡。
3、动静分离
为了加快网站的解析速度,可以把动态页面(例如:jsp,servlet)和静态页面(例如:html,css, js)由不同的服务器来解析,加快解析速度,降低原来单个服务器的压力。
二、Ubuntu 下 Nginx 安装及常用命令
1、进入Nginx 官网,http://nginx.org/ 进行下载 或直接使用命令: sudo apt-get install nginx
①、使用 nginx -v 查看安装的版本
②、使用命令 ifconfig 查看ip地址,
使用命令: service nginx start 启动nginx , 也可进去/usr/sbin/下,使用sudo ./nginx启动nginx,
在网页输入查看的ip地址,出来Welcome to nginx!页面则算安装成功,
使用命令:service nginx stop 关闭 nginx, 或者进入/usr/sbin/下, 使用命令: sudo ./nginx -s stop关闭nginx;
重加载命令:进入/usr/sbin/下,使用命令:sudo ./nginx -s reload 即可;
③、nginx文件安装完成之后的文件位置:
/usr/sbin/nginx:主程序
/etc/nginx:存放配置文件
default 服务主机配置文件,路径为:/etc/nginx/sites-available/default
nginx.conf 文件,路径为:/etc/nginx/nginx.conf
/usr/share/nginx:存放静态文件
/var/log/nginx:存放日志
④、查看开放的端口号:
firewall-cmd --list-all
⑤、设置开放的端口号:
firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-port=80/tcp --permanent
⑥、重启防火墙:
firewall-cmd --reload
三、Nginx的配置文件
1、最新版本nginx配置是由4个文件构成:
conf.d:用户自己定义的conf配置文件
sites-available:系统默认设置的配置文件
sites-enabled:由sites-available中的配置文件转换生成
nginx.conf:汇总以上三个配置文件的内容,同时配置我们所需要的参数
在部署需要的web服务时,我们可以拷贝sites-enabled中的default文件到conf.d并且修改名字为**.conf,然后进行配置;
2、Nginx 配置文件有三部分组成
(1)、全局块
从配置文件开始到events块之间的内容,主要会设置一直影响Nginx服务器整体运行的配置指令。
比如:worker_processes 1; worker_processes值越大,可以支持的并发处理量也就越多;
(2)、events 块
events 块涉及的指令主要影响 Nginx 服务器与用户的网络连接;
比如:worker_connections 1024; 表示支持的最大连接数
(3)、http块
Nginx 服务器配置中最频繁的部分,
http块也可以包括:http全局块和server块