【发布时间】:2010-09-24 12:58:07
【问题描述】:
我一直在我的跟踪器上注意到机器人正在访问我的网站。我应该更改或编辑我的 robots.txt 还是更改某些内容?不确定这是否好,因为它们是索引还是什么?
【问题讨论】:
标签: seo robots.txt
我一直在我的跟踪器上注意到机器人正在访问我的网站。我应该更改或编辑我的 robots.txt 还是更改某些内容?不确定这是否好,因为它们是索引还是什么?
【问题讨论】:
标签: seo robots.txt
我应该更改或编辑我的 robots.txt 还是更改某些内容?
取决于机器人。一些机器人会尽职尽责地忽略 robots.txt。 18 个月前,我们在使用 google AD 机器人时遇到了类似的问题,因为我们的客户购买了很多广告。 Google AD 机器人将(如文档所述)忽略通配符 (*) 排除,但会听取明确的忽略。
请记住,支持 robots.txt 的漫游器不会抓取您的网站。如果您希望他们访问您的数据以进行索引,这是不可取的。
更好的解决方案是限制或向机器人提供静态内容。
不确定这是否好,因为它们是索引还是什么?
它们可能是索引/抓取/窃取。真的都一样。我认为您想要的是根据 UserAgents 限制他们的 http 请求处理。如何执行此操作取决于您的 Web 服务器和应用容器。
正如其他答案中所建议的,如果机器人是恶意的,那么您需要找到 UserAgent 模式并向他们发送 403 禁止。或者,如果恶意机器人动态更改用户代理字符串,您还有两个选择:
【讨论】:
我真的不认为更改 robots.txt 会有所帮助,因为只有优秀的机器人才会遵守它。所有其他人都忽略它并根据需要解析您的内容。就我个人而言,我使用http://www.codeplex.com/urlrewriter 来摆脱不受欢迎的机器人,如果发现它们就会回复一条禁止消息。
【讨论】:
垃圾邮件机器人不关心 robots.txt。您可以使用 mod_security 之类的东西来阻止它们(这本身就是一个非常酷的 Apache 插件)。或者你可以忽略它们。
【讨论】:
您可能必须使用 .htaccess 来拒绝某些机器人来篡改您的日志。 见这里:http://spamhuntress.com/2006/02/13/another-hungry-java-bot/
我有很多 Java 机器人爬取我的网站,添加
SetEnvIfNoCase 用户代理 ^Java/1。 javabot=是
SetEnvIfNoCase 用户代理 ^Java1。 javabot=是
从 env=javabot 拒绝
让他们停下来。现在他们只得到 403 一次,仅此而已:)
【讨论】:
我曾经为一位客户工作过,该客户的网站上一直有许多“价格比较”机器人。问题是我们的后端资源稀缺,而且每笔交易都需要花钱。
在尝试与其中一些对抗一段时间后,机器人只是不断改变其可识别的特征。我们最终采用了以下策略:
对于服务器上的每个会话,我们确定用户是否在任何时候点击过快。在给定的重复次数后,我们将“isRobot”标志设置为 true,并通过添加睡眠来简单地降低该会话中的响应速度。我们没有以任何方式告诉用户,因为在这种情况下他只是开始一个新会话。
【讨论】: