nginx.conf主要存放nginx的系统配置,单独的nginx访问配置不管用nginx还是openresty最好放在配置文件目录conf.d下,以访问域名区分,conf结尾
worker_processes 8;
worker_cpu_affinity auto;
#单个进程能打开的最大文件数
worker_rlimit_nofile 102400;
pid /var/run/nginx.pid;
error_log /App/logs/nginx/error.log error;
events {
#单个进程允许的客户端最大连接数
worker_connections 65536;
use epoll;
}
http {
include mime.types;
default_type application/octet-stream;
#提高操作文件的效率
sendfile on;
#在Linux和FreeBSD 4.*上将响应头和正文的开始部分一起发送,一次性发送整个文件。
tcp_nopush on;
#隐藏nginx版本号
server_tokens off;
#隐藏后端php版本号
more_clear_headers 'X-Powered-By';
#后端服务器健康检查状态共享内存
check_shm_size 10M;
#客户端的长连接在服务器端保持的最长时间
keepalive_timeout 65;
#解决报错could not build optimal server_names_hash(可能是因为mis upstream应用过多的ip_hash所致)
server_names_hash_max_size 2048;
#gzip模块设置
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
#默认为1.1,nginx和后端upstream使用1.0
gzip_http_version 1.0;
#压缩级别
gzip_comp_level 2;
#支持压缩的文件格式,需要对那些格式内容进行压缩可补充,注意写法。
gzip_types text/plain application/x-javascript application/javascript text/css application/xml application/json;
gzip_vary on;
#对ie6之前的版本支持差,通过ie6之前版本的请求不进行gzip压缩
gzip_disable "MSIE [1-6]\.";
#client post body
client_body_timeout 300;
client_body_buffer_size 512k;
client_max_body_size 900m;
#client header buffer
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
#open file cache
#为多少个文件定义缓存,及缓存文件的失效时间。
open_file_cache max=102400 inactive=20s;
#文件在inactive时间内至少一次也没有被使用,将被从缓存移除
open_file_cache_min_uses 1;
#检查缓存有效的间隔时间。
open_file_cache_valid 30s;
#upstream proxy
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;
proxy_connect_timeout 300s;
proxy_read_timeout 300s;
proxy_send_timeout 300s;
#代理服务端不要主要主动关闭客户端连接,防止返回499错误
#proxy_ignore_client_abort on;
#当后端服务器的响应状态码大于等于400时将响应发送给客户端,为off时将响应转发给nginx由error_page指令来处理。
proxy_intercept_errors on;
#设置后端服务器额外的响应头不发送给客户端
proxy_hide_header X-Mod-Pagespeed;
proxy_hide_header Pragma;
#错误码页跳转错误页
error_page 444 446 443 /50x.html;
#set cache
proxy_temp_path /App/nginx_cache/proxy_temp_dir;
proxy_cache_path /dev/shm levels=1:2 keys_zone=cache1:100m inactive=1d max_size=3g;
include conf.d/*.conf;
}