手动阀

Good Luck To You!

apache禁止搜索引擎收录、网络爬虫采集的配置方法

Apache服务器禁止搜索引擎收录和网络爬虫采集的配置方法主要涉及以下几个方面:

apache禁止搜索引擎收录、网络爬虫采集的配置方法

1、通过.htaccess文件配置

修改.htaccess文件:在网站目录下的.htaccess文件中添加代码,可以阻止特定UserAgent(如爬虫)访问网站,添加以下代码可以阻止包含“spider”字符的爬虫访问:

     RewriteEngine On
     RewriteCond %{HTTP_USER_AGENT} (^$|FeedDemon|JikeSpider|Indy ) [NC]
     RewriteRule ^(.*)$  [F]

或者更具体地,只阻止某个特定的爬虫,如百度爬虫:

     SetEnvIfNoCase UserAgent "baiduspider" bad_bot
     BrowserMatchNoCase bingbot bad_robot
     BrowserMatchNoCase Googlebot bad_robot
     Order Deny,Allow
     Deny from env=bad_robot

设置重定向规则:如果希望将爬虫请求重定向到其他页面或返回特定状态码,可以在.htaccess中添加相应的Rewrite规则,将所有爬虫请求重定向到首页并返回403状态码:

     RewriteCond %{HTTP_USER_AGENT} .*(Baiduspider|Bingbot|Googlebot|Sosospider|Sogou|YoudaoBot|Yahoo|YisooSpider|YodaoBot|AhrefsBot).* [NC,OR]
     RewriteRule ^(.*)$ http://www.example.com/$1 [R=403,L]

2、通过robots.txt文件配置

创建或编辑robots.txt文件:在网站的根目录下创建或编辑robots.txt文件,以指定哪些搜索引擎爬虫可以访问哪些页面或目录,要禁止所有搜索引擎爬虫访问整个网站,可以添加以下内容:

apache禁止搜索引擎收录、网络爬虫采集的配置方法

     Useragent: *
     Disallow: /

针对特定搜索引擎设置规则:如果只想禁止特定搜索引擎爬虫访问,可以在robots.txt中为该搜索引擎设置单独的规则,只禁止百度爬虫访问整个网站:

     Useragent: Baiduspider
     Disallow: /

3、通过Apache配置文件(如httpd.conf)设置

修改Apache配置文件:直接在Apache的配置文件(如httpd.conf)中设置访问控制规则,要禁止特定IP地址段的爬虫访问,可以添加以下配置:

     <Location />
         SetEnvIfNoCase UserAgent "spider" bad_bot
         BrowserMatchNoCase bingbot bad_bot
         BrowserMatchNoCase Googlebot bad_bot
         Order Deny,Allow
         Deny from env=bad_bot
         Deny from 124.115.4. 124.115.0. 64.69.34.135 216.240.136.125 218.15.197.69 155.69.160.99 58.60.13. 121.14.96. 58.60.14. 58.61.164. 202.108.7.209
     </Location>

使用mod_authz_host模块:在Apache 2.4版本及以后,可以通过mod_authz_host模块设置更复杂的访问控制,根据UserAgent设置访问权限:

     <RequireAll>
         Require all granted
         Require not env bad_bot
     </RequireAll>

方法可以根据具体需求组合使用,以达到最佳的防护效果,建议定期检查和更新防护规则,以应对新的爬虫技术和攻击手段。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

Copyright Your WebSite.Some Rights Reserved.