目录
前言
在生产应用环境中。服务器的安全性和响应速度需要根据实际的情况进行相应的参数配置,达到最优的用户体验。
默认的nginx安装参数只能提供最基本的服务,还需要调整如网页时间、连接超时、网页压缩等相应参数,才能发挥服务器的最大作用,增加工作效率。
一、隐藏版本号
可以通过隐藏Nginx版本号,防止被破解
首先查看自己当前版本
curl -I http://192.168.23.20
网页中查看版本
例如我使用的是Google 开发者工具 network 刷新 选择请求 选择headlers 查看版本
Nginx隐藏版本号的方式
修改配置文件
然后重启nginx服务
再次查看 不显示版本号
vim /usr/local/nginx/conf/nginx.conf
systemctl restart nginx
curl -I http://192.168.23.20
二、修改用户和组(控制权限)
如果没有安装前创建用户,则在此服务中默认使用的是nobody
vim /usr/local/nginx/conf/nginx.conf
重启服务,查看服务状态
三、设置缓存时间(图片)
vim /usr/local/nginx/conf/nginx.conf
将图片要放在/usr/local/nginx/html目录下
四、日志分割
vim /opt/fenge.sh
#!/bin/bash
# Filename:fenge.sh
d=$(date -d "-1 day" "+%Y%m%d")
logs_path="/var/log/nginx"
pid_path="/usr/local/nginx/logs/nginx.pid"
[ -d $logs_path ] || mkdir -p $logs_path
mv /usr/local/nginx/logs/access.log ${logs_path}/test.com-access.log-$d
kill -HUP $(cat $pid_path)
find $logs_path -mtime +30 | xargs rm -rf
设置定时任务
五、连接超时(偏于客户端)
vim /usr/local/nginx/conf/nginx.conf
keepalive_timeout 65 180;
client_header_timeout 80; #等待客户端发送请求头的超时时间,超过会发送408报错
client_body_timeout 80; #等待客户端发送请求体的超时时间
六、更改进程数(场景)
cat /proc/cpuinfo | grep -c "physical id"#查看cpu核数
ps aux | grep nginx #查看nginx主进程中包含几个子进程
vim /usr/local/nginx/conf/nginx.conf
worker_processes 2; #修改为核数相同或者2倍
worker_cpu_affinity 01 10; #设置每个进程由不同cpu处理,进程数配2 4 6 8分别为0001 0010 0100 1000
重启服务
systemctl restart nginx
七、配置网页压缩
vim /usr/local/nginx/conf/nginx.conf
http {
......
gzip on; #取消注释,开启gzip压缩功能
gzip_min_length 1k; #最小压缩文件大小
gzip_buffers 4 64k; #压缩缓冲区,大小为4个64k缓冲区
gzip_http_version 1.1; #压缩版本(默认1.1,前端如果是squid2.5请使用1.0)
gzip_comp_level 6; #压缩比率 1:压缩比最小,速度最快;9:压缩比最大,传输速度最快,但处理也最慢,也比较的消耗CPU资源
gzip_vary on; #支持前端缓存服务器存储压缩页面
gzip_types text/plain text/javascript application/x-javascript text/css text/xml application/xml application/xml+rss image/jpg image/jpeg image/png image/gif application/x-httpd-php application/javascript application/json; #压缩类型,表示哪些网页文档启用压缩功能
......
}
cd /usr/local/nginx/html
先将game.jpg文件传到/usr/local/nginx/html目录下
vim index.html
<img src="game.jpg"/> #网页中插入图片
</body>
</html>
systemctl restart nginx
Nginx总结
Nginx的功能是处理静态请求的服务
优化以后可以提高工作效率以及工作安全,除去这些nginx优化方式还有防盗链以及fpm参数优化,这些下次分享