配置nginx防盗链

Nginx 的防盗链原理是加入 location 项,用正则表达式过渡图片类型文件,对于信任的网址可以正常使用,
对于不信任的网址则返回相应的错误图片,在源主机( bt.com )的配置文件中加入以下代码:
vi /usr/local/nginx/conf/nginx.conf
location ~*\.(jpg|gif|swf) $ {
valid_referers none blocked *.test.com test.com;
if ( $invalid_referer ) {
rewrite ^/http://www.bt.com/error.png;
}
}
下面分析一下这段代码:
~*\.(jpg|gif|swf) $ 这段正则表达式表示匹配不区分大小写,以 .jpg .gif .swf 结尾的文件。
valid_referers :设置信任的网站,可以正常使用图片。
none :浏览器中 referer 为空的情况,这就是直接在浏览器访问图片。
blocked :浏览器中 referer 不可空的情况,但是值被代理或防火墙删除了,这些值不以 http://
https:// 开头。
后面的网站或者域名: referer 中包含相关字符串的网址。
if 语句:如果链接的来源域名不在 valid_referers 所列出的列表中, $invalid_referer 1 ,则执行后
面的操作,即进行重写或返回 403 页面。
把图片 error.png 放到源主机( bt.com )的工作目录下。
ls /usr/local/nginx/html
50x.html index.html logo.jpg error.png
这是重启服务器,重新访问 http://www.test.com/index.html ,显示的是被重写的图片。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值