server_tokens off; #关闭版本号
keepalive_timeout 65 180; #设置超时是180秒
client_header_timeout 80; #指定请求头的超时时间
client_body_timeout 80; #指定请求体超时时间
worker_proces 2;
参数设置为2,和CPU核数相同,运行进程数设置多一些,响应客户端请求时,Nginx就不会临时启动新的进程提供服务,减少了系统的开销,提升了服务的速度。
work_processes 4;#工作进程数量
worker_cpu_affinity 00000001 00000010 00000100 00001000;#为每个进程指定cpu
sendfile on; # 开启高效文件传输模式。
gzip on; #开启gzip压缩输出
gzip_buffers 4 64k; #表示申请4个单位为64kB的内存作为压缩结果流缓存
gzip_http_version 1.1; #用于设置http协议版本,默认是1.1
gzip_comp_level 2; #指定gzip压缩比,压缩比最小,处理速度最快
gzip_min_length 1k; #设置允许压缩的页面最小字节数
gzip_vary on; #让前端的缓存服务器缓存经过gzip压缩的页面
worker_connections 102400; #每个工作进程允许的最大连接数。
accept_mutex on;
multi_accept on; # 打开同时接受多个新网络连接请求的功能。
use epoll; #使用高性能的 epoll 事件驱动,处理效率高。
防盗链
location ~.(jpg|gif|swf)$ {
valid_referers none blocked .benet.com benet.com;
if ( $invalid_referer ) {
rewrite ^/ http://www.benet.com/error.png;
}
}
~*.(jpg|gif|swf)$: 匹配不区分大小写,以.jpg 或.gif或 .swf结尾的文件。
valid_referers:设置信任的网站,可以正常使用图片。
none:浏览器中refer为空的情况,就是直接在浏览器访问图片。
blocked:浏览器中refer不为空的情况,但是值被代理或防火墙删除了,这些值不以http://或 https://开头。
后面的网址或域名:refer包含相关字符串的网址。
if语句:如果链接的来源域名不在valid_referers所列出的列表中, $invalid_referer 为1,则执行后面的操作,即进行重写或返回403页面。
原文地址:https://blog.51cto.com/ygtq666/2442371