下面这份实例来自 Nginx 官方配置。
#!nginx : # 使用的用户和组 : user www www; : # 指定工作衍生进程数 : worker_processes 2; : # 指定 pid 存放的路径 : pid /var/run/nginx.pid; : # [ debug | info | notice | warn | error | crit ] : # 可以在下方直接使用 [ debug | info | notice | warn | error | crit ] 参数 : error_log /var/log/nginx.error_log info; : events { : # 允许的连接数 : connections 2000; : # use [ kqueue | rtsig | epoll | /dev/poll | select | poll ] ; : # 具体内容查看 http://wiki.codemongers.com/事件模型 : use kqueue; : } : http { : include conf/mime.types; : default_type application/octet-stream; : log_format main '$remote_addr - $remote_user [$time_local] ' : '"$request" $status $bytes_sent ' : '"$http_referer" "$http_user_agent" ' : '"$gzip_ratio"'; : log_format download '$remote_addr - $remote_user [$time_local] ' : '"$request" $status $bytes_sent ' : '"$http_referer" "$http_user_agent" ' : '"$http_range" "$sent_http_content_range"'; : client_header_timeout 3m; : client_body_timeout 3m; : send_timeout 3m; : client_header_buffer_size 1k; : large_client_header_buffers 4 4k; : gzip on; : gzip_min_length 1100; : gzip_buffers 4 8k; : gzip_types text/plain; : output_buffers 1 32k; : postpone_output 1460; : sendfile on; : tcp_nopush on; : tcp_nodelay on; : send_lowat 12000; : keepalive_timeout 75 20; : #lingering_time 30; : #lingering_timeout 10; : #reset_timedout_connection on; : server { : listen one.example.com; : server_name one.example.com www.one.example.com; : access_log /var/log/nginx.access_log main; : location / { : proxy_pass http://127.0.0.1/; : proxy_redirect off; : proxy_set_header Host $host; : proxy_set_header X-Real-IP $remote_addr; : #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; : client_max_body_size 10m; : client_body_buffer_size 128k; : client_body_temp_path /var/nginx/client_body_temp; : proxy_connect_timeout 90; : proxy_send_timeout 90; : proxy_read_timeout 90; : proxy_send_lowat 12000; : proxy_buffer_size 4k; : proxy_buffers 4 32k; : proxy_busy_buffers_size 64k; : proxy_temp_file_write_size 64k; : proxy_temp_path /var/nginx/proxy_temp; : charset koi8-r; : } : error_page 404 /404.html; : location /404.html { : root /spool/www; : charset on; : source_charset koi8-r; : } : location /old_stuff/ { : rewrite ^/old_stuff/(.*)$ /new_stuff/$1 permanent; : } : location /download/ { : valid_referers none blocked server_names *.example.com; : if ($invalid_referer) { : #rewrite ^/ http://www.example.com/; : return 403; : } : #rewrite_log on; : # rewrite /download/*/mp3/*.any_ext to /download/*/mp3/*.mp3 : rewrite ^/(download/.*)/mp3/(.*)..*$ : /$1/mp3/$2.mp3 break; : root /spool/www; : #autoindex on; : access_log /var/log/nginx-download.access_log download; : } : location ~* ^.+.(jpg|jpeg|gif)$ { : root /spool/www; : access_log off; : expires 30d; : } : } : }
下面这部分是摘自服务器上配置(修改后的版本)。我们来看一下详细配置。
user nginx; # 设置使用的用户和组 worker_processes auto; # 指定工作进程数 error_log /var/log/nginx/error.log; # 指定错误日志位置 pid /run/nginx.pid; # 指定 pid 存放的路径 # Load dynamic modules. See /usr/share/nginx/README.dynamic. include /usr/share/nginx/modules/*.conf; # 配置多站点 events { worker_connections 1024; # 允许的连接数 } http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; # 访问日志 sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; # Load modular configuration files from the /etc/nginx/conf.d directory. # See http://nginx.org/en/docs/ngx_core_module.html#include # for more information. include /etc/nginx/conf.d/*.conf; server { listen 80 default_server; listen [::]:80 default_server; server_name _; root /usr/share/nginx/html; # 静态页面位置 # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { # 匹配所有以 / 开头的请求 } error_page 404 /404.html; # 404 页面 location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } location /api/ { # 请求为/api/ 时 proxy_pass http://localhost:8085/; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } location /dce/ { proxy_pass http://localhost:8082/; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } location /eo/ { proxy_pass http://localhost:8087/; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
接下来,我们看一下配置。
1)查看系统 Nginx 用户。
2)查看系统CPU数量。
3)查看pid。
4)多站点配置。