nginx 优化

###隐藏版本信息 server_tokens
Syntax: server_tokens on | off | build | string;
Default: server_tokens on;
Context: http, server, location

###设置cpu棵树
Syntax: worker_processes number | auto;
Default: worker_processes 1;
Context: main

###cpu优化
worker_processes 4;
worker_cpu_affinity 0001 0010 0100 1000;

###work最大连接数
Syntax: worker_connections number;
Default: worker_connections 512;
Context: events

###打开文件数
Syntax: worker_rlimit_nofile number;
Default: —
Context: main

###开启高校传输——->零拷贝
Syntax: sendfile on | off;
Default: sendfile off;
Context: http, server, location, if in location

###讲数据信息进行快速传输
Syntax: tcp_nodelay on | off;
Default: tcp_nodelay on;
Context: stream, server
This directive appeared in version 1.9.4.

###将数据积攒传输
Syntax: tcp_nopush on | off;
Default: tcp_nopush off;
Context: http, server, location

###优化客户端访问nginx服务器超时时间
Syntax: keepalive_timeout timeout [header_timeout];
Default: keepalive_timeout 75s;
Context: http, server, location

###优化服务器短请求超时时间
Syntax: client_header_timeout time;
Default: client_header_timeout 60s;
Context: http, server

###优化两个请求主体发送间隔超时时间
Syntax: client_max_body_size size;
Default: client_max_body_size 1m;
Context: http, server, location

###优化两个响应信息的间隔时间 send_timeout
Syntax: send_timeout time;
Default: send_timeout 60s;
Context: http, server, location

###设置客户端请求报文主题最大尺寸 client_max_body_size
Syntax: client_max_body_size size;
Default: client_max_body_size 1m;
Context: http, server, location

###设置使用类型
Syntax: user user [group];
Default: user nobody nobody;
Context: main

###设置缓冲区大小 fastcgi_buffer
Syntax: fastcgi_buffer_size size;
Default: fastcgi_buffer_size 4k|8k;
Context: http, server, location

###设置缓冲区数量和缓冲区大小 fastcgi_buffers
Syntax: fastcgi_buffers number size;
Default: fastcgi_buffers 8 4k|8k;
Context: http, server, location

###用于设置系统很忙时可以使用的fastcgi_buffers,调整为原来大小的二倍
Syntax: fastcgi_busy_buffers_size size;
Default: fastcgi_busy_buffers_size 8k|16k;
Context: http, server, location

###指定临时存储缓冲区目录
Syntax: fastcgi_temp_path path [level1 [level2 [level3]]];
Default: fastcgi_temp_path fastcgi_temp;
Context: http, server, location
fastcgi临时文件的大小可以设置为128~256kb
Syntax: fastcgi_temp_file_write_size size;
Default: fastcgi_temp_file_write_size 8k|16k;
Context: http, server, location

###设置请求几次之后响应将被缓存
Syntax: fastcgi_cache_min_uses number;
Default: fastcgi_cache_min_uses 1;
Context: http, server, location

###开启缓存并为其指定一个名称
Syntax: fastcgi_cache zone | off;
Default: fastcgi_cache off;
Context: http, server, location

###访问页面缓存生成MD5
Syntax: fastcgi_cache_key string;
Default: fastcgi_cache_key http://$host$request_uri;
Context: http, server, location

###缓存路径配置信息
Syntax: fastcgi_cache_path path [levels=levels目录级别] [use_temp_path=on|off] keys_zone=name:size缓存空间的名字和大小 [inactive=time 提示缓存超时时间删除缓存] [max_size=size 最大值 ] [manager_files=number] [manager_sleep=time] [manager_threshold=time] [loader_files=number] [loader_sleep=time] [loader_threshold=time] [purger=on|off] [purger_files=number] [purger_sleep=time] [purger_threshold=time];
Default: fastcgi_cache_path /data/ngx_fcgi_cache levels=2:2 keys_zone=ngx_fcgi_cache:512m inactive=1d max_size=40g;
Context: http

###指定应答代码的缓存时间
Syntax: fastcgi_cache_valid [code …] time;
Default: —
Context: http, server, location
使用过期的缓存
Syntax: fastcgi_cache_use_stale error | timeout | invalid_header | updating | http_500 | http_503 | http_403 | http_404 | http_429 | off …;
Default: fastcgi_cache_use_stale off;
Context: http, server, location