利用Nginx限制靜態頁面的訪問權限(防盜鏈、禁止爬蟲)


1.限制爬蟲配置

if ($http_user_agent ~* "spider|crapy|Sogou web spider|Baiduspider|Googlebot|Bingbot|360Spider|Yisouspider|Sogouspider|Yahoo! Slurp")
{
    return 403;
}

  上述配置意思是,http_user_agent(對應瀏覽器參數User-agent)參數不區分大小寫匹配到上述爬蟲參數時,返回403. 該配置可以放置在server或location區域。

 

2. 防盜鏈設置

valid_referers ~\.apicloud\.;
if ($invalid_referer)
{
    return 403;
}

  valid_referers 是白名單, ~\.apicloud\.  是匹配到https://或http://鏈接中帶有apicloud域名的,可以正常訪問,其他則返回403.

  同等效果設置:valid_referers server_names;  server_names是匹配所在sever{}字段中配置的server_names值

          valid_referers domain.com *.apicloud.com 是匹配指定域名的所有域名可以正常訪問

          valid_referers none;none:表示空的來路,比如直接訪問的

          valid_referers blocked 192.168.13.225 ; blocked:表示被防火牆標識過的來路, 后面的ip就是允許的名單

     上述配置可以組合使用,如valid_referers none blocked 192.168.13.225 domain.com *.apicloud.com  server_names  ~\.apicloud\.;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM