nginx优化及配置

nginx隐藏版本号

查看方法

浏览器F12 看network头部看server

curl -i 192.168.232.7

获取头部(查版本号)

配置文件改

nginx优化及配置_第1张图片

 添加server_tokens off

nginx优化及配置_第2张图片

改源码

cd /src/core

vim nginx.h

修改

nginx优化及配置_第3张图片

 修改的IIS为window常用的软件服务

重新编译安装

cd nginx_1.22.0

./configure r--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_modul

make && make install

打开配置文件中展示版本号

server_tokens on

nginx优化及配置_第4张图片nginx优化及配置_第5张图片

 nginx优化及配置_第6张图片

配置文件第一行修改取消注释改为nobady

nginx优化及配置_第7张图片

 网页缓存

nginx优化及配置_第8张图片

nginx优化及配置_第9张图片

http段设置会对所有站点进行缓存设置

location段,只对网站的某个页面或请求进行设置

expires 1d; 缓存一天

vim /usr/local/nginx/conf/nginx.cong

改完nginx -t检查文件格式

加上html会把网页一起缓存

nginx优化及配置_第10张图片

 日志分割nginx优化及配置_第11张图片nginx优化及配置_第12张图片 思路

定义变量

第一步,判断日志保存目录是否存在if test -d判断

不存在创建

第二部,把原本访问和错误日志放在创的目录中,以年月日的方式保存date -d来实现

kill -usr1 使后面的进程号继续进行

date输出时间

输出当月第一天输出

date +%Y%m01

下个月的第一天

date -d  "1 month" +%Y%m01

上的月的第一天

date -d  "-1 month" +%Y%m01

上个月的最后一天

data -d "$(data +%Y%m01) -1 day" +%Y%m%d

这个月的最后一台

date -d "$(date -d "1 mouth" +%Y%m%01) -1day" +%Y%m%d

 LASRDAY=$(data -d "-1 day" "+%Y%m%d") #获取昨天日志

 logs_path="/var/log/nginx" #存放日志分割后的目录

NGINXHOME="/var/local/nginx"

PIDPATH="$NGINXHOME/logs/nginx.pid" #获取pid文件

[ -d $PIDPATH ] || mkdir -p $PIDPATH #创建存放日志的目录 ||前面成立才执行后面的&&前面不成功执行后面的

mv /usr/local/nginx/logs/access.log ${PIDPATH}/access.log-$LASTDAY #分割日志

mv /usr/local/nginx/logs/error.log ${logs_path}/error.log-$LASTDAY

kill -USR1 $(cat $PIDPATH) #nginx生成新的日志文件

find $LOGPATH -mtime +30 |xargs rm -rf

给权限chmod +x log.sh

定时任务0 0 * * * /root/log.sh

nginx优化及配置_第13张图片

 vim /usr/local/nginx/conf/nginx.conf

nginx优化及配置_第14张图片

 nginx优化及配置_第15张图片

 keepalive_timeout 65 60;前面65 服务端主动关闭的时间,后面的客户端传送的最好少于前面的

为解决服务端timewite的状态

修改内核参数让系统快速释放

ip头部中标识符分片 偏移量怎么分片的clinet_header

_timeout

nginx优化及配置_第16张图片

 worker_processes可设置为auto

nginx优化及配置_第17张图片

 两个cpu时 01 10

nginx优化及配置_第18张图片

 cd /opt/nginx_1.1.0/auto

cat options | grep YES | grep -i gzip

查看加载的模块

nginx优化及配置_第19张图片

 buffer写入的缓冲,一次多个写

cache 读的缓存 哈希

level 9压缩最慢

nginx优化及配置_第20张图片

 usr/local/nginx/mime.types支持的格式

nginx优化及配置_第21张图片

nginx优化及配置_第22张图片

location ~* \.(jpg|gif|swf)${

valid_referers *.自己的域名.com;

if($invalid_raferer){   #上面以外的域名

rewrite ^/ http://www.bt.com/error.png;

}

}

*不区分大小写

nginx优化及配置_第23张图片

盗链网站

nginx优化及配置_第24张图片

防盗链配置

nginx优化及配置_第25张图片

none为直接访问图片

blocked允许没有http://

nginx优化及配置_第26张图片

总结nginx程序级别的优化

网页压缩优化

 nginx程序优化

网页缓存

隐藏版本号

更改工作进程数,进程绑定cpu,修改进程最大连接数

设置连接保持

设置防盗链

系统内核优化

ulimit -n 临时设置

永久设置vim /etc/security/limits.conf

设置打开nofile文件数 65535

nproc进程数 32000

* soft(hard) memlock内存数量 unlimited

内核参数 vim /etc/systctl.conf

开启快速回收timewite

nginx优化及配置_第27张图片

 nginx优化及配置_第28张图片

 对开放端口

用过哪些nginx模块

cd/opt/nginx_1.1.0/auto/options下有很多模块

http_gzip_static_module网页压缩模块

http_stub_status_module状态统计模块

http_rewrite_module  重写模块

http_auth_basic_module 网站用户认证模块

http_fastcgi_modue fastcgi转发请求给php-fpm的模块

http_ssl_module htpps用到的ssl认证加密模块

http_upstream_*_module 反向代理模块

你可能感兴趣的:(nginx,运维)