Nginx服务性能和安全优化(念念不忘,必没回响)

一、配置Nginx隐藏版本相关信息

1.隐藏版本号

修改 nginx.conf 文件,在http块中添加字段后,重载服务
在这里插入图片描述
获取报文信息并查看(浏览器查看或使用命令)
在这里插入图片描述

2.修改版本号及相关信息

如果做了上一步在nginx.conf 中添加了 server_tokens off 需要注释掉!!
修改源码信息(修改完需要重新编译安装)
在这里插入图片描述
(修改的只是显示的信息,并不是真正修改版本和信息)
在这里插入图片描述
重新编译安装

cd /opt/ngnginx-1.12.0/
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module
 
make && make install
 
systemctl restart nginx.service

获取报文信息并查看
在这里插入图片描述

二、修改Nginx运行时的属主和属组

修改 nginx.conf 文件
在这里插入图片描述
查看nginx运行用户发生改变(默认为nobody) a
在这里插入图片描述

三、配置Nginx网页缓存时间

当Nginx将网页数据返回给客户端后,可设置缓存的时间,以方便在日后进行相同内容的请求时直接返回,避免重复请求,加快了访问速度;
一般针对静态网页设置,对动态网页不设置缓存时间。

修改 nginx.conf 文件 ,在http块 或server块 或location块中添加 expires 参数

# ~ 代表使用正则表达式,后面匹配的是以|分割的字符结尾的文件
location ~ \.(gif|jpg|jpeg|png|mp4|mp3|txt)$ {       
            root   html;
            expires 1d;    #代表缓存时间为1天
}

aa
在这里插入图片描述
添加图片,访问测试

查看报文信息,86400代表1天,设置生效

四、配置Nginx站点日志分割

编写脚本(因为放在后一天凌晨执行,所以获取前一天的日期)
在这里插入图片描述
执行并测试
在这里插入图片描述
加入计划任务
在这里插入图片描述

五、设置Nginx长连接及超时时间

keepalive_timeout
指定KeepAlive的超时时间(timeout)。指定每个tcp连接最多可以保持多长时间,服务器将会在这个时间后关闭连接。
Nginx的默认值是65秒,有些浏览器最多只保持60秒,所以可以设定为 60秒。若将它设置为0,就禁止了keepalive连接。
第二个参数(可选的)指定了在响应头keepalive_timeout 中的time值。这个头能够让一些浏览器主动关闭连接,这样服务器就不必去关闭连接了。没有这个参数,Nginx不会发送Keep-Alive响应头。
client_header_timeout
客户端向服务端发送一个完整的 request header的超时时间。如果客户端在指定时间内没有发送一个完整的 reqpuest header,Nginx 返回HTTP 408(RequestTimed out ) 。
client_body_timeout
指定客户端与服务端建立连接后发送request body的超时时间。如果客户端在指定时间内没有发送任何内容,Nginx返回 HTT 408(Request Timed out) 。

修改 nginx.conf 文件
在这里插入图片描述
检查语法并重启服务
在这里插入图片描述
访问并查看请求报文(保持连接,且浏览器超时时间为50s)
在这里插入图片描述

六、配置Nginx网页压缩

Nginx的ngx http gzip module压缩模块提供对文件内容压缩的功能。
允许Nginx服务器将输出内容在发送客户端之前进行压缩,以节约网站带宽,提升用户的访问体验,默认已经安装,可在配置文件中加入相应的压缩功能参数对压缩性能进行优化。
在这里插入图片描述
在这里插入图片描述
检查语法并重启服务
在这里插入图片描述
准备页面并访问测试
在这里插入图片描述

七、配置Nginx防盗链

1.模拟盗链

192.168.116.10为www.abc.com; 192.168.116.20为www.def.com;
www.def.com模拟盗取www.abc.com的网页图片;
使用windows主机访问两个网站。

配置域名解析(为了方便这里修改/etc/hosts文件)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在www.def.com的首页添加图片
在这里插入图片描述
在www.abc.com的首页盗取此站点图片
在这里插入图片描述

2.配置防盗链并测试

修改 nginx.conf 文件,如果有缓存配置,需要在缓存配置之前加上

location ~* .(gif|jpg|jpeg|png|swf)$ { … }
~代表使用正则表达式 ,*代表不区分大小写(location选项中不能包含防盗链图片的格式)
vaild_referers …
代表设置受信任的网站,匹配到的将不会做防盗链。
none
允许没有http_refer的请求访问资源(根据Referer的定义,它的作用是指示一个请求是从哪里链接过来的,如果直接在浏览器的地址栏中输入一个资源的URL地址,那么这种请求是不会包含Referer字段的),如http://www.def.com/error.webp。
blocked
允许不是http://开头的,不带协议的请求访问资源。
i n v a l i d r e f e r e r 就是 v a i l d r e f e r e r s 指定的站点范围取反,即非信任站点 i f 判断当地址满足 invalid_referer 就是vaild_referers指定的站点范围取反,即非信任站点 if判断当地址满足 invalidreferer就是vaildreferers指定的站点范围取反,即非信任站点if判断当地址满足invalid_referer的范围,则指定条件中的语句,
即 rewrite ^/ http://www.def.com/error.webp; 重写访问的url为指定url。

在这里插入图片描述
在这里插入图片描述
在www.def.com下上传防盗链的图片
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值