目录
Ⅱwindows浏览器打开盗链端网站,直接可以访问到服务端图片
一、配置盗链
①准备工作
准备两个nginx服务器
一台作为服务器(被盗) 192.168.58.58 放图片
一台作为盗链端 192.168.58.128
②配服务端192.168.58.58
cd /usr/local/nginx/html
把图片放进去
vim index.html
③配置盗链端192.168.58.58
Ⅰ配置地址映射
cd/etc
vim hosts
Ⅱ修改盗链端html
cd /usr/local/nginx/html
vim index.html
添加
<img src="http://www.fuwu.com/cat.jpg">
以盗取服务端图片
④在whindows里实验
Ⅰ修改windows hosts文件 添加地址映射
Ⅱwindows浏览器打开盗链端网站,直接可以访问到服务端图片
完成,盗链端偷到了服务端的图片。
二、防盗链
在nginx配置中文件中添加location模块以防止非直接搜索服务器地址的用户,拿走以jpg|gif|swf结尾的图片,服务端rewrite指定图片(jpg|gif|swf结尾的图片将都被屏蔽)
①添加防盗链后rewrite的图片
cd /usr/local/nginx/html
添加图片,此图片用以嘲讽盗链者
修改图片后缀为.png
②添加服务端自身地址映射
cd /etc vim hosts
添加 192.168.58.58 www.fuwu.com
③修改Nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
sever 80块后增加location块
location ~*.(jpg|gif|swf)$ {
valid_referers *.fuwu.com fuwu.com; #设置信任网站,授信
if ( $invalid_referer ) { #如果存在不信任的网站即源头不为授信网站
rewrite ^/ http://www.fuwu.com/not.png; #重写
return 403;
}
}
④重启Nginx服务,windows浏览器进入盗链段以验证
systemctl restart nginx
试验成功
特别提醒Ⅰ浏览器寻找地址时会先找本地缓存,修改Nginx配置文件后进行浏览器验证时,需要先清除浏览器缓存。
Ⅱ 以此方法设好location,则无法直接在服务端指定看html目录的图片
此时在防盗链设置的locationg块信任域名前加入none,则不经过referer寻找图片,则可以选择访问服务端html目录的图片。