Nginx防盗链

根据referer的字段,通过referer告诉服务器该网页是从哪个页面链接过来的,一旦检测到来源不是本站即进行阻止或者返回指定的页面

配置

编辑配置文件

vim /usr/local/nginx/conf.d/www.conf 
server {
  listen 80;
  server_name endvv.com www.endvv.com;
  root /usr/local/nginx/html;
  
location ~ .*\.(jpg|png|jpeg|gif)$ {
  #access_log  off;   #设置是否记录日志
  valid_referers  none  blocked  www.endvv.com endvv.com;
  if ($invalid_referer) {
  #rewrite ^/ https://www.endvv.com/404.png;
  return 403;  #如果域名不是上面指定的地址就返回403
}
}
}

重载配置文件

/usr/local/nginx/sbin/nginx -s reload

验证

[root@linux nginx]# cat logs/www.log|tail -1  
59.36.95.43 - - [29/Sep/2020:05:18:10 +0800] "GET /xxx.png HTTP/1.1" 403 144 "http://119.29.84.190/" "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/60.0"
Last modification:October 6th, 2020 at 02:36 am
如果觉得我的文章对你有用,请随意赞赏