我已经注意到我的追踪器,机器人正在访问我的网站很多。我应该改变或编辑我的robots.txt 或者改变什么?不知道,如果这就是良好的,因为它们是编制索引或什么?

有帮助吗?

解决方案

我应该改变或编辑我的robots.txt 或者改变什么?

取决于机器人。一些机器人将会尽职尽责的无视robots.txt.我们有一个类似的问题18个月前与谷歌的广告机器人,因为我们的客户购买很多很多广告。谷歌广告的机会(记录)忽略通配符的(*)的排除,但是听到的明确的忽略。

记住,机器人的荣誉robots.txt 只是不爬己的网站。这是不可取的,如果你想让他们获得数据,用于编制索引。

一个更好的解决方案是为了节流阀或供静态内容的机器人。

不知道,如果这就是良好的,因为它们是编制索引或什么?

他们可能是索引/刮/偷窃。所有相同的真的。什么我觉得你想要的是油门它们http请求的处理的基础上UserAgents.如何做到这一点取决于您的网络服务器和应用程序的容器中。

如建议在其他的答案,如果机器人是恶意,那么你就需要找到简的模式,并将它们发送403forbiddens.或者,如果恶意机器人动态变化的用户代理串你有一个另外的两个选项:

  • 白名单UserAgents-例如创建一个用户代理的过滤器,只接受某些用户代理。这是非常不完善。
  • IP禁止-http头将包含源的知识产权。或者,如果你要DOS会(拒绝服务攻击的),那么,你有更大的问题

其他提示

我真的不认为改变的robots.txt是要帮助,因为只有良好的机器人遵守它。所有其他的忽略它,因为他们请解析您的内容。我个人使用 http://www.codeplex.com/urlrewriter 得到由摆脱不良机器人用禁止消息响应,如果他们被发现。

在垃圾邮件机器人不关心的robots.txt。你可以像阻止他们 mod_security的(这是在自己的权利一个很酷的Apache插件)。或者你可以不理会他们。

您可能需要使用的.htaccess否认一些机器人与你的日志螺丝。 在这里看到: http://spamhuntress.com/2006/02/ 13 /另一个饥渴-java的BOT /

我有很多的Java机器人的爬行我的网站,加入

SetEnvIfNoCase用户代理^爪哇/ 1。 javabot = YES结果 SetEnvIfNoCase的User-Agent ^ Java1。 javabot = YES结果 从ENV否认= javabot

使它们停止。现在,他们只得到403一次,就是这样:)

我曾经为一个客户谁了一批“价格比较”机器人击中网站所有的时间。问题是,我们的后端资源稀少,每次交易费用的钱。

试图击退一些这样的一段时间,但机器人只是不停地改变自己的识别特征后。我们结束了以下策略:

有关我们确定,如果用户是在任何点击太快服务器上的每个会话。重复给定的次数后,我们会在“isRobot”标志设置为true,简单地通过增加油门睡觉向下一个事务中的响应速度。我们没有告诉任何方式的用户,因为他只是在这种情况下,启动一个新的会话。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top