前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Nginx配置Referer模块防止图片盗链

Nginx配置Referer模块防止图片盗链

原创
作者头像
ICU
修改2022-04-21 11:02:08
1.1K0
修改2022-04-21 11:02:08
举报
文章被收录于专栏:我和你

摘要

用到Referer模块是因为一个网站没有用cdn,但是又要考虑图片防止盗链的问题,完全防止是不可能的,只是加个难度而已,并且还可以伪装referer,但既然用到了还是简单记录下吧。

nginx的http_referer模块默认应该都有,就不说怎么安装了。

正文

有2种规则:

一、允许为空访问

代码语言:javascript
复制
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {
            valid_referers none blocked server_name
*.abc.com
www.abc.com/shop/
~\.google\.;
            if ($invalid_referer) {
               return 403;
               #rewrite ^.*$ https://www.google.com;
            }
  }
  • none:为空没有referer也可以直接访问
  • blocked:referer没有值也可以访问
  • server_name:nginx配置的域名,有的可能是server_names
  • www.abc.com/shop/:从这个页面的请求都可以访问
  • *.abc.com:域名正则可以访问
  • ~.google\.:只要识别到有google正则都可以访问

二、为空不允许访问

代码语言:javascript
复制
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {
            valid_referers *.jingxialai.com;
            if ($invalid_referer) {
               return 403;
               #rewrite ^.*$ https://www.google.com;
            }
  }

就是把none blocked删了,这样就不能在浏览器打开这张图片了。

referer的防盗链很简单,也很容易破解,如果你网站要求不严格,用这个也可以了,如果很严格再继续看看别的。

以后有机会了我会尝试下其他更复杂的防盗链配置,比如secure_link模块,也会记录下。

完结

以上就是所有Nginx配置Referer模块防止图片盗链的内容,欢迎小伙伴们交流讨论。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 摘要
  • 正文
  • 完结
相关产品与服务
网站建设
网站建设(Website Design Service,WDS),是帮助您快速搭建企业网站的服务。通过自助模板建站工具及专业设计服务,无需了解代码技术,即可自由拖拽模块,可视化完成网站管理。全功能管理后台操作方便,一次更新,数据多端同步,省时省心。使用网站建设服务,您无需维持技术和设计师团队,即可快速实现网站上线,达到企业数字化转型的目的。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档