自己收集的nginx优化配置

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

时间: 2024-10-14 19:28:54

自己收集的nginx优化配置的相关文章

Nginx 优化配置

nginx 优化配置查看隐藏版本号:curl -I http://192.168.106.138HTTP/1.1 200 okServer:nginx/1.12.0--------------------------------隐藏版本号方法 1-----------------------------------------vim /usr/local/nginx/conf/nginx.confhttp {include mime.types;default_type application/

nginx优化配置

在使用java web container的时候,我们都在前面挡一层nginx,方便使用各种nginx的功能,设置成代理. 访问特别多的时候发现,服务器上存在大量的TIME_WAIT状态的连接. 经分析,可能是nginx早期版本的upstream还是使用的1.0的短连接代理,java container老是以1.0的方式主动断开进入TIME_WAIT状态,浪费了大量的连接. netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a,

nginx优化配置参考

#nginx启用的用户和组user nginx; #启动的工作进程数,一般配置为跟逻辑CPU核数一样worker_processes auto; #1个nginx进程可打开的最大文件描述符数目的数量worker_rlimit_nofile 51200; #记录严重错误日志error_log /var/log/nginx/error.log error; #运行的pidpid /run/nginx.pid; #加载其他模块配置include /usr/share/nginx/modules/*.c

Nginx优化—配置优化

完整配置如下所示: 1 user nginx; #运行的用户 2 pid /var/run/nginx.pid; 3 worker_processes auto; #定义了nginx对外提供web服务时的worder进程数,CPU核的数量.存储数据的硬盘数量及负载模式 4 worker_rlimit_nofile 100000; #更改worker进程的最大打开文件数限制,比'ulimit -a'多.解决"too many open files" 5 events { 6 worker

Nginx、Tomcat线上环境优化配置

 Nginx.Tomcat线上环境优化配置 Nginx优化: Nginx安全方面的优化: 1. nginx安全优化,在nginx配置文件http标签段内添加"server_tokens  off"即可隐藏访问或者报错时提示web版本号信息. 2. server_tokens参数可以在http,server,location的位置添加 3. 还可以修改nginx的3个源码文件 4. 如还需要安全优化更改端口.用户. nginx 性能优化: 对于nginx配置文件中对优化比较有作用的一般为

nginx全局配置和性能优化

nginx目录结构和命令 1.ls /apps/nginx/:         html是测试页,sbin是主程序 2.ls /apps/nginx/sbin/:  nginx 只有一个程序文件 3.ls /apps/nginx/html/:  50x.html index.html 测试网页 ?nginx:默认为启动nginx -h 查看帮助选项 -V 查看版本和配置选项 -t 测试nginx语法错误 -c filename 指定配置文件(default: /etc/nginx/nginx.c

【nginx】配置优化

1.编译安装过程优化 在编译Nginx时,默认以debug模式进行,而在debug模式下会插入很多跟踪和ASSERT之类的信息,编译完成后,一个Nginx要有好几兆字节.在编译前取消Nginx的debug模式,编译完成后Nginx只有几百千字节,因此可以在编译之前,修改相关源码,取消debug模式,具体方法如下:在Nginx源码文件被解压后,找到源码目录下的auto/cc/gcc文件,修改如下几行 sed -i '[email protected]="$CFLAGS -g"@#CFLA

CentOS6.5 Nginx优化编译配置

说到Nginx,它真的算是我在运维工作中的好朋友,它优异的性能和极高的工作效率实在是让人大爱,来自internet的报告称其epoll模型能够支持高达50000个并发连接数. Epoll[维基百科]: epoll是Linux下 多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率,因为它会复用文件描述符 集合来传递结果而不用迫使开发者每次等待事件之前都必须重新准备要被侦听的文件描述符集合,另一点原因就是获取事件的时候,它无须遍历

编译安装nginx及简单优化配置

一.背景 使用源码包安装lnmp架构及简单的优化配置 二.实验环境 rhel6.5 三.安装过程 1.nginx(提前装好gcc等编译器) (1) 下载源码包  http://nginx.org/ (2) tar -zxf nginx-1.8.1.tar.gz (3) cd nginx-1.8.1 vim auto/cc/gcc 修改第179行 (将本行注释,意为取消debug模式,) (4) ./configure --prefix=/usr/local/lnmp/nginx \ --with