网站图片防盗链(nginx通过referers实现图片资源防盗链)

网站图片防盗链(nginx通过referers实现图片资源防盗链)

原理:
当浏览器向web服务器发起资源请求时,会在请求头中带上Referer字段,告诉服务器请求是从哪个页面过来的,服务器根据该信息进行校验并响应。

Nginx为我们提供了ngx_http_referer_module模块,可以获取请求头中Referer字段,根据字段值返回不同的响应,就可以达到如果不是从我们自己网站发起的请求,就直接返回403禁止访问。

server {
 listen 80;
 server_name www.http3w.com;

# 如果获取图片时,不是从www.http3w.com页面发起的请求,则禁止访问。

location ~^/.*\.(png|jpg|gif|jfif) {
  valid_referers none www.http3w.com;
  if ($invalid_referer){
     return 403;
  }
  root html;

}
}

除了使用valid_referers指令外,我们还需要用到一个内置变量$invalid_referer,如果Referer请求标头字段值被认为有效,则$invalid_referer的值为空字符串,否则为“1”。

1、所有文章未经授权禁止转载、摘编、复制或建立镜像,如有违反,追究法律责任。
2、本站文章部分来源注册用户发布或互联网收集而来,若有侵权,请邮件联系作者。
邮箱地址:wtao219@qq.com
THE END
分享
二维码
< <上一篇
下一篇>>