第2 章 Nginx服务器的安装部署
Nginx目录介绍:
*conf目录存放配置文件
*docs存放文档资料
*html存放两个后缀名为.html的静态网页文件
*logs存放运行日志文件
*nginx.exe即为启动Nginx服务器的运行程序
2.3.2 Nginx服务的启动
./sbin/nginx
2.3.3 Nginx服务的停止
ps -ef | grep nginx
//从容停止Nginx:
kill -QUIT 主进程号
//快速停止Nginx:
kill -TERM 主进程号
2.3.4 Nginx服务的重启
1、kill -HUP 12130
2、./sbin/nginx -s reload
2.4 Nginx服务器基础配置指令
2.4.1 nginx.conf文件的结构
1 全局块
配置运行Nginx服务器的用户(组)、允许生成的worker process数、Nginx进程PID存放路径、日志的存放路径和类型以及配置文件引入等。
2 events块
影响Nginx服务器与用户的网络连接。常用到的设置包括是否开启对多worker process下的网络连接进行序列化、是否允许同时接收多个网络连接,选取哪种事件驱动模型处理连接请求,每个worker process可以同时支持的最大连接数等
3 http块
代理、缓存和日志定义等绝大多数的功能和第三方模块的配置都可以放在这个模块中。
可以在http全局块中配置的指令包括文件引入、MIME-Type定义、日志自定义、是否使用sendfile传输文件、连接超时时间、单连接请求数上限等。
4 server块
每个server块就相当于一台虚拟主机。虚拟主机技术使得Nginx服务器可以在同一台服务器上只运行一组Nginx进程,就可以运行多个网站。
在Server块中,就常见的两个配置项是本虚拟主机的监听配置和本虚拟主机的名称或IP配置。
5 location块
基于Nginx服务器接收到的请求字符串,对除虚拟主机名称之外的字符串进行匹配,对特定的请求进行处理。
地址定向、数据缓存和应答控制等功能都是在这部分完成。
2.4.2 配置运行Nginx服务器用户(组)
只有被设置的用户或者用户组成员才有权限启动Nginx进程。
2.4.3 配置允许生成的worker process数
从理论上来说,worker process的值越大,可以支持的并发处理量也越多。
2.4.4 配置Nginx进程PID存放路径
默认文件配置将此文件存放在Nginx安装目录logs下。
2.4.5 配置错误日志的存放路径
配置错误日志文件路径;配置日志的级别;
2.4.6 配置文件的引入
将其他的Nginx配置或者第三方模块的配置引用到当前的主配置文件中。
2.4.7 设置网络连接的序列化(events块)
“惊群”问题:当某一时刻只有一个网络连接到来时,多个睡眠进程会被同时叫醒,但只有一个进程可获得连接。
开启accept_mutex(默认开启),将会对多个Nginx进程接收连接进行序列化,防止多个进程对连接的争抢。
2.4.8 设置是否允许同时接收多个网络连接(events块)
Multi_accept默认关闭(off)状态,即每个worker process一次只能接收一个新到达的网络连接。
2.4.9 事件驱动模型的选择(events块)
Nginx服务器提供了多种事件驱动模型来处理网络消息。
语法:use method;
2.4.10 配置最大连接数
指令worker_connections主要用来设置允许每一个worker process同时开启的最大连接数。
2.4.11 定义MIME-Type(http块)
MIME Type是网络资源的媒体类型。
2.4.12 自定义服务日志
log_format
access_log
2.4.13 配置允许sendfile方式传输文件
2.4.14 配置连接超时时间
与用户建立会话连接后,Nginx服务器可以保持这些连接打开一段时间。
2.4.15 单连接请求数上限
Nginx服务器端和用户端建立会话连接后,用户端通过此连接发送请求。指令keepalive_requests用于限制用户通过某一连接向Nginx服务器发送请求的次数。
2.4.16 配置网络监听
默认的设置为:listen :80 | :8000;
即监听所有80端口和8000端口。
2.4.17 基于名称的虚拟主机配置
配置了名称,需要配置好dns。本地机器配置hosts文件。
2.4.18 基于IP的虚拟主机配置
2.4.19 配置location块
2.4.20 配置请求的根目录
Web服务器接收到网络请求之后,首先要在服务器端指定目录中寻找请求资源。
2.4.21 更改location的URI
在location块中,除了使用root指令指明请求处理根目录,还可以使用alias指令改变location接收到的URI的请求路径。
2.4.22 设置网站的默认首页
指令index用于设置网站的默认首页,一是,用户在发生请求访问网站时,请求地址可以不写首页名称;二是,可以对一个请求,根据其请求内容而设置不同的首页。
2.4.23 设置网站的错误页面
error_page
2.4.24 基于IP配置Nginx的访问权限
指令allow,用于设置允许访问Nginx的客户端IP;
指令deny,用于设置禁止访问Nginx的客户端IP。
2.4.25 基于密码配置Nginx的访问权限
2.5 Nginx服务器基础配置实例