我试图阻止一个特殊的目录中的所有机器人/爬虫/蜘蛛。 我如何能做到这一点与htaccess
? 我搜索了一点,通过基于用户代理阻挡找到了解决办法:
RewriteCond %{HTTP_USER_AGENT} googlebot
现在,我需要更多的用户代理(为已知的所有Bot),并将该规则应只适用于我的单独的目录。 我已经一个robots.txt但不是全部爬虫看看吧...通过IP封锁是不是一种选择。 还是有其他的解决方案? 我知道密码保护,但我要问第一,如果这将是一种选择。 不过,我期待基于用户代理的解决方案。
你需要有支持mod_rewrite。 该文件夹中放置它在.htaccess。 如果放置在别处(例如父文件夹),那么重写规则图案需要稍微修改以包括文件夹名称)。
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (googlebot|bingbot|Baiduspider) [NC]
RewriteRule .* - [R=403,L]
- 您添加任何其他你自己(字母不区分大小写) - 我已经进入了只有少数机器人。
- 此规则将与这样的请求“403次禁止访问”结果代码响应。 您可以切换到另一个响应HTTP代码,如果你真的想(403是最合适的位置考虑您的要求)。
为什么要使用的.htaccess的mod_rewrite或为专门意味着工作robots.txt
? 这里是robots.txt的片断,你需要牛逼阻止一组特定的目录。
User-agent: *
Disallow: /subdir1/
Disallow: /subdir2/
Disallow: /subdir3/
这将阻止在目录中的所有搜索机器人/subdir1/
, /subdir2/
和/subdir3/
。
更多解释见这里: http://www.robotstxt.org/orig.html
我知道题目是“老”,但尽管如此,谁也这里降落脂肪酶(我也做),你可以看看这里巨大5克黑名单2013 。
这是一个很大的帮助和NO不仅为WordPress也为所有其他网站。 工程真棒恕我直言。
另一条是值得看的可能是Linux的审查通过的.htaccess反垃圾邮件