1 隐藏nginx header里版本号信息
2 更改源码隐藏软件名称及版本号
3 更改掉nginx默认用户及用户组(worker进程服务用户优化)
4 配置nginx worker进程个数
5 根据cpu核数进行nginx进程优化
6 nginx事件处理模型优化
7 调整nginx worker单个进程允许的客户端最大连接数
8 配置nginx worker进程最大打开文件数
9 开启高效的文件传输模式
10 设置连接超时时间
11 上传文件大小限制(动态应用)
12 fastcgi调优(配合PHP引擎动态服务)
13 配置nginx gzip压缩功能(重要)
14 配置nginx expires缓存功能(重要)
15 nginx日志相关优化与安全
16 nginx站点目录及文件URL访问控制(重要:防止恶意解析)
17 配置nginx图片及目录防盗链
18 nginx错误页面优雅显示
19 nginx防爬虫优化
20 使用tmpfs文件系统给/tmp
21 防DOS***
22 防DDOS策略
23 限制客户端请求的HTTP方法
24 为web服务增加用户身份验证(适合内部机密网址)
25 让Nginx运行于(A Chroot Jail (Containers))监牢模式
26 其他优化
1 隐藏nginx header里版本号信息
1、查看版本号
[root@c66-kslx ~]# curl -I 127.0.0.1 HTTP/1.1 200 OK Server: nginx/1.6.2 Date: Sat, 14 Mar 2015 08:15:29 GMT Content-Type: text/html Content-Length: 25 Last-Modified: Fri, 13 Mar 2015 10:52:27 GMT Connection: keep-alive ETag: "5502c16b-19" Accept-Ranges: bytes
2、隐藏版本号
在nginx配置文件的http标签内加入“server_tokens off; ”参数,也可以放大server标签和location标签中,如下:
http { .......... server_tokens off; .......... } /application/nginx/sbin/nginx -t /application/nginx/sbin/nginx -s reload
再此查看如下,浏览器访问错误页面也就没有版本号了
[root@c66-kslx conf]# curl -I 127.0.0.1 HTTP/1.1 200 OK Server: nginx
1 更改源码隐藏软件名称及版本号
在nginx编译安装之前,先更改,之后再编译安装
1、更改版本号,修改nginx-1.3.4/src/core/nginx.h
[root@oldboy /]# cd /home/oldboy/tools/ [root@oldboy tools]# cd nginx-1.6.2/src/core [root@oldboy core]# sed -n '13,17p'nginx.h #define NGINX_VERSION "1.6.2" 修改为想要的版本号如2.4.3 #define NGINX_VER "nginx/" NGINX_VERSION 将nginx修改为想要修改的软件名称,如Apache。
修改后查看header结果:
[root@S1-SERVER nginx-1.3.4]# curl -I 10.0.0.182 HTTP/1.1 200 OK Server:Apache/2.4.3
2、修改nginx-1.6.12/src/http/ngx_http_header_filter_module.c
需要修改的字符串
[root@M-SERVER http]# grep 'Server:nginx' ngx_http_header_filter_module.c static char ngx_http_server_string[] ="Server:nginx" CRLF; [root@M-SERVER http]# sed -i 's#Server:nginx#Server:Apache#g' ngx_http_header_filter_module.c
修改后的字符串
[root@M-SERVER http]# grep 'Server:Apache' ngx_http_header_filter_module.c static char ngx_http_server_string[] ="Server:Apache" CRLF;
3)修改ngx_http_special_response.c
#vi nginx-1.3.4/src/http/ngx_http_special_response.c static u_char ngx_http_error_full_tail[]= ""NGINX_VER" "CRLF "