Nginx配置文件解析:
1#设置worker进程的所属用户,设置不同的用户由于用户权限不同所以对worker进程操作文件有影响,默认是nobody用户,查看nginx进程是用命令:ps -ef | grep nginx 就可以看到进程和所属用户
2#user nobody;
3#设置worker进程的个数,默认设置为1个
4worker_processes 1;
5
6#错误日志配置,日志级别包括:debug、info、notice、warn、error、crit、alert、emerg
7#error_log logs/error.log;
8#error_log logs/error.log notice;
9#error_log logs/error.log info;
10#nginx的进程号
11#pid logs/nginx.pid;
12
13#events模块中包含nginx中所有处理连接的设置
14events {
15 #选择nginx连接所使用的IO模型,Linux下建议使用epoll
16 use epoll;
17 #每个worker允许的最大连接数
18 worker_connections 1024;
19}
20
21#http相关配置,内部可以嵌套多个server,配置代理,缓存,日志等绝大多数功能和第三方模块的配置
22http {
23 #mime.type是一个文件,里面定义了可使用的文件类型与文件拓展名的映射
24 include mime.types;
25
26 #默认的文件类型
27 default_type application/octet-stream;
28
29 #设置一个日志格式化的格式,名字叫‘main’,里面包含的参数含义如下:
30 #$remote_addr 客户端ip
31 #$remote_user 远程客户端用户名
32 #$time_local 时间和时区
33 #$request 请求的url以及method
34 #$status 响应状态码
35 #$body_bytes_send 响应客户端内容字节数
36 #$http_referer 记录用户从哪个链接跳转过来的
37 #$http_user_agent 用户所使用的代理,一般来时都是浏览器
38 #$http_x_forwarded_for 通过代理服务器来记录客户端的ip
39 #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
40 # '$status $body_bytes_sent "$http_referer" '
41 # '"$http_user_agent" "$http_x_forwarded_for"';
42
43 #设置access_log的位置并制定使用main格式进行格式化
44 #access_log logs/access.log main;
45
46 #允许sendfile方式传输文件
47 sendfile on;
48 #开源tcp_nopush时,数据包累积到一定大小时再发送,tcp_nopush必须和sendfile配合使用,是提高文件传输效率的
49 #tcp_nopush on;
50
51 #连接超时时间,单位是秒,保证客户端多次请求的时候不会重复建立新的连接,节约资源损耗。设定为0时,客户端每次连接都是新建连接
52 #keepalive_timeout 0;
53 keepalive_timeout 65;
54
55 #开启gzip压缩,进行数据传输时进行压缩
56 #gzip on;
57
58 #一个虚拟的主机配置
59 server {
60 #监听的端口号
61 listen 80;
62 #监听的地址,虚拟主机名
63 server_name localhost;
64 #字符集
65 #charset koi8-r;
66
67 #access日志的配置,当前只是配置当前server的日志
68 #access_log logs/host.access.log main;
69
70 #路由规则配置8
71 location / {
72 #当前路由的根目录
73 root html;
74 #默认主页
75 index index.html index.htm;
76 }
77
78 #默认404错误页配置
79 #error_page 404 /404.html;
80
81 #50x错误页配置
82 # redirect server error pages to the static page /50x.html
83 #
84 error_page 500 502 503 504 /50x.html;
85 location = /50x.html {
86 root html;
87 }
88 }
89
90
91
92 #另一个虚拟主机配置
93 # another virtual host using mix of IP-, name-, and port-based configuration
94 #
95 #server {
96 # listen 8000;
97 # listen somename:8080;
98 # server_name somename alias another.alias;
99
100 # location / {
101 # root html;
102 # index index.html index.htm;
103 # }
104 #}
105
106 #Https的虚拟主机配置
107 # HTTPS server
108 #
109 #server {
110 # 监听端口
111 # listen 443 ssl;
112 # 监听地址
113 # server_name localhost;
114 #
115 # ssl安装连接相关配置
116 # ssl_certificate cert.pem;
117 # ssl_certificate_key cert.key;
118
119 # ssl_session_cache shared:SSL:1m;
120 # ssl_session_timeout 5m;
121
122 # ssl_ciphers HIGH:!aNULL:!MD5;
123 # ssl_prefer_server_ciphers on;
124
125 # location / {
126 # root html;
127 # index index.html index.htm;
128 # }
129 #}
130
131}