Nginx优化与防盗链

1.Nginx服务优化

(1)隐藏版本号

curl  -i  http://192.168.10.101                 //查看版本号

两种隐藏方法

1.修改Nginx主配置文件

修改配置文件方式

cd  nginx.conf

vim  nginx.conf

将server_tokens  off   解除注释                     //关闭版本号

nginx -t                                                //测试配置文件语法

systemctl   restart  nginx                           //重启服务

curl  -i  http://192.168.10.101


2.修改Nginx源码文件

设置版本信息

vim  nginx-1.12.0/src/core/nginx.h            //编辑源码文件

修改版本号和服务器类型

cd  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                  //打开配置文件

找到server_tokens  on               //打开版本号

systemctl   restart   nginx 

curl  -i  http://192.168.10.101

2.设置优化参数

(只要修改nginx配置文件,就要重置nginx)

1.修改用户和组

之前在配置nginx时,已经指定了用户和组

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

将user  后加上  nginx  nginx               //即用户和组修改为nginx

ps  aux |  grep  nginx                //查看运行情况

2.设置连接超时

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

找到keepalive_timeout   设置为  65  180;  //默认时间为65秒,设置超时为180秒

去到浏览器输入192.168.10.101   打开开发者工具,即可验证

3.更改进程数

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

修改work_processes   和  worker_connections   前者取决于cpu的核数,后者取决于内存大小

ps  aux |  grep  nginx      //查看运行情况

4.配置网页压缩

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

找到#gzip  on       取消注释  

到浏览器里192.168.10.101   打开开发者工具,即可验证

5.配置网页缓存时间

(1)以图片为缓存对象,将logo.jpg移动到nginx的工作目录,到浏览器里192.168.10.101   打开开发者工具,查看“网络”中的“消息头”有没有图片的缓存信息

(2)修改nginx配置文件,加入新的location,在location中加入expir参数,指定缓存时间,1d为一天

(3)重启nginx服务后,再次进入到浏览器,查看消息头中有无图片的缓存信息和缓存时间

6.配置防盗链

(1)准备两台主机模拟盗链,都写入以下信息

192.168.10.101  www.benet.com

192.168.10.102 www.accp.com

(2)修改windows的hosts文件,设置域名和ip

192.168.10.101  www.benet.com

192.168.10.102 www.accp.com

(3)将图片logo.jpg放到源主机(benet.com)的工作目录下

cd  /usr/local/nginx/html

ls

(4)在盗链主机(accp.com)工作目录下编写盗链页面index.html,盗取源主机(benet.com)的图片

yum -y install httpd        

vim index.html

<html>
<body>
<h1> zhe shi wo de dian nao </h1>
< img src="logo.jpg"/>
</body>
</html>

访问盗链的网页http://www.accp.com/insex.html 查看是否盗链成功

(6)配置Nginx防盗链

Nginx的防盗链的原理时加入location,用正则表达式过滤图片类型的文件,对于信任的网址可以正常使用,不信任的网址返回相应的错误图片。在源主机(benet.com)的配置文件中加入以下代码。

cd  /usr/local/nginx/html

将errog.png图片放到源主机的目录下

ls

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

加入location项

location  ~* \. (gift|jpeg|bmp)$ {

valid_referers  *.benet.com  benet.com;

 if ($invalid_referer){

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

               }

}

重启服务器,重新访问http://www.accp.com/index.html,显示的为errorg.log即为成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值