Nginx防爬虫或限制浏览器访问

假定一个场景:某个网站它可能不希望被网络爬虫抓取,例如测试环境不希望被抓取,以免对用户造成误导,那么需要在该网站中申明,本站不希望被抓取。有如下方法:

方法一:修改nginx.conf,禁止网络爬虫的ua,返回403。

server { 

listen 80; 

server_name 127.0.0.1; 

#添加如下内容即可防止爬虫

if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot") 

return 403; 

方法2:网站更目录下增加Robots.txt,放在站点根目录下。

  

限制浏览器访问:

        if ($http_user_agent ~* "Firefox|MSIE")
        {
             return 403;
        }

原文地址:https://www.cnblogs.com/wajika/p/6599279.html