本文主要是介绍nginx盗链与防盗链,nginx的平滑升级,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
盗链
实现目标:server2盗链server1www.westos.org下的图片资源
server1上:
注释掉之前的所有重定向模块
[root@server1 ~]# cd /usr/local/lnmp/nginx/conf/
[root@server1 conf]# vi nginx.conf
server {listen 80;server_name www.westos.org bbs.westos.org;#rewrite ^/(.*)$ https://www.westos.org/$1 permanent;#rewrite ^/bbs$ http://bbs.westos.org permanent;#rewrite ^/bbs/(.*)$ http://bbs.westos.org/$1 permanent;#if ($host = "bbs.westos.org") { #$host : 请求主机头字段,否则为服务器名称# rewrite ^/(.*)$ http://www.westos.org/bbs/$1 permanent;#}location / {root /web;index index.html;}
}[root@server1 conf]# cd /web
[root@server1 web]# ls
index.html vim.jpg ##图片
[root@server1 ~]# nginx -s reload
server2上:
[root@server2 ~]# cd /usr/local/nginx/conf/
[root@server2 conf]# vi nginx.conf
server {listen 80;server_name daolian.westos.org;charset utf-8; #不加这个参数网页上看到的汉字是乱码location / {root /web;index index.html;}
}[root@server2 ~]# mkdir /web
[root@server2 ~]# cd /web
[root@server2 ~]# vim /web/index.html<html><body>
<br>盗链图片</br>
<img src="http://www.westos.org/vim.jpg"></body></html>
[root@server2 ~]# nginx -s reload
客户端:
配置域名解析
[kiosk@foundation34 ~]$ vi /etc/hosts
172.25.34.3 daolian.westos.org
测试:
浏览器上访问daolian.westos.org,可以访问的到图片资源
防盗链
server1:
站点模块中加入
```css
[root@server1 web]# cd /usr/local/lnmp/nginx/conf/
[root@server1 conf]# vi nginx.conf
server {listen 80;server_name www.westos.org bbs.westos.org;#rewrite ^/(.*)$ https://www.westos.org/$1 permanent;#rewrite ^/bbs$ http://bbs.westos.org permanent;#rewrite ^/bbs/(.*)$ http://bbs.westos.org/$1 permanent;#if ($host = "bbs.westos.org") { #$host : 请求主机头字段,否则为服务器名称# rewrite ^/(.*)$ http://www.westos.org/bbs/$1 permanent;#}location / {root /webindex index.html;}location ~* \.(gif|jpg|png|jpeg)$ { ##防盗链模块root /web;valid_referers none blocked www.westos.org;if ($invalid_referer) {return 403;#rewrite ^/(.*)$ http://bbs.westos.org/daolian.jpg; #防盗链优化模块,如果是盗链,则重定向}
}
[root@server1 ~]# nginx -s reload
**测试:**
-
浏览器上访问daolian.westos.org,访问不到资源
![在这里插入图片描述](https://img-blog.csdnimg.cn/20191019224705797.png)
**nginx的平滑升级**
-
这篇文章对于平滑升级讲解十分清楚,建议参考
https://blog.csdn.net/qq_42036824/article/details/87868665注意:
平滑升级再次编译时不用make && make install 直接make 否则所有的配置文件也会重改
之前版本的配置文件中添加的模块,因为版本升级时重新编译过了,这些模块要不删除,要不补全加入该模块所需要的前提条件,例如在配置文件中添加ssl模块,前提需要有加密文件,但是因为重新编译,加密文件不存在,如果要重启新的版本,不更改会启动失败。
这篇关于nginx盗链与防盗链,nginx的平滑升级的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!