一.优化Nginx的相关措施
1.优化网页访问速度
(1)在可重启状态下,为避免同一客户端长时间占用连接,造成资源浪费,可以在http段设置连接超时参数keepalived_timeout实现控制连接访问时间
(2)当网页数据返回给客户端后,可针对静态网页设置缓存时间,在配置文件内的http段内server段添加location,更改字段expires 1d来实现:避免重复请求,加快访问速度
(3)配置状态页,用于输出Nginx基本状态信息
(4)在配置文件中gzip模块加入相应压缩功能参数,节约网站带宽,提升用户访问体验
(5)调试worker进程打开的文件个数(提前修改pam认证文件)
(6)提高PHP解析速度,根据服务器内存与负载进行FPM模块参数调整,例如增加dynamic(动态)方式产生fpm进程
(7)开启多进程,配置worker_processes auto
(8)使用nice设置work_priority修改work进程优先级
(9)长连接,一次连接,多次传输
(10)修改events模块
events {
worker_connections 65536; #设置单个工作进程最大并发连接数
use epoll; #使用epoll事件驱动
accept_mutex on; #同一时刻一个请求轮流由work进程处理,轮询,防止“惊群”会卡
multi_accept on; #每个工作进程同时接受多个网络连接
}
2.优化服务器安全性
(1)隐藏版本号,避免安全漏洞泄露,通过http段内添加server_tokens off 或修改源码
(2)需有用户与组的支持,实现对网站文件读取时进行访问控制,编译时指定用户与组(即修改./configure后指定)或修改配置文件
(3)进行日志分割(USR1),掌握运行状态,可以通过写脚本完成
(4)设置防盗链,防止别人直接从网站引用链接,消耗资源与流量
二.查看和隐藏版本号
1.查看版本号
curl -I http://192.168.79.28
#查看信息(版本号等)
2.隐藏版本号
(1)修改文件配置
#修改配置文件
vim /usr/local/nginx/conf/nginx.conf
------------------------------------------------------
http {include mime.types;default_type application/octet-stream;server_tokens off; #添加,关闭版本号---------------------------------------------------#检查语法问题
nginx -t #重启服务
systemctl restart nginx #查看版本号是否被隐藏
curl -I http://192.168.79.28
(2)修改源代码,重新编译安装
#修改源码文件
vim /opt/nginx-1.12.0/src/core/nginx.h
#define NGINX_VERSION "1.1.1" #修改版本号 将1.12.0版本改为1.1.1
#define NGINX_VER "IIS" NGINX_VERSION #修改服务器类型 将nginx改为IIS#重新配置安装
cd /opt/nginx-1.12.0/
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
make && make install#修改配置文件
vim /usr/local/nginx/conf/nginx.conf
http {include mime.types;default_type application/octet-stream;server_tokens on; #将版本号打开#验证
systemctl restart nginx #重启服务
curl -I http://192.168.79.28 #查看服务名称
本章优化措施在编译安装情况下请注意使用nginx -V命令查看后更改路径!