【问题标题】:Robots.txt: allow only major SERobots.txt:只允许主要 SE
【发布时间】:2009-03-22 19:30:08
【问题描述】:

有没有一种方法可以配置 robots.txt 以便该网站只接受来自 Google、Yahoo! 的访问和 MSN 蜘蛛?

【问题讨论】:

  • robots.txt 与“站点接受”无关。这只是一个张贴的规则列表,要求表现良好的代理人遵守。您违反规则的唯一办法是使用不同的机制通过 ip 或用户代理来禁止。
  • 我同意你的观点:由于我的英语很差,我无法更好地表达这个概念。
  • 由于蜘蛛会在您的服务器中引发大量活动,我有兴趣只允许那些来自主要 SE(主要是 Google)的访问我的网站。原因是我要启动一个 Amazon EC2 VPS,并且不想为所有这些蜘蛛可能导致的流量和 CPU 使用付费。也许它没有意义,但这个想法对我来说似乎很合理。
  • @user2027230 您显然没有理解互联网的意图,即让您的数据公开(对所有人)可用。
  • @Marcus 不适合那些抓取您的网站、消耗您的服务器资源、使您的服务器崩溃并使您的网站无法使用的人。

标签: web-crawler robots.txt


【解决方案1】:

用户代理: * 不允许: / 用户代理:Googlebot 允许: / 用户代理:Slurp 允许: / 用户代理:msnbot 不允许:

Slurp 是雅虎的机器人

【讨论】:

  • Google、MSN 和 Yahoo 有其他蜘蛛,您可能也想Allow(例如 msnbot-media、bingbot)。此外,bingbot 是我在我运营的网站的日志中看到最多的 Microsoft 蜘蛛。
  • Facebook 机器人呢?
  • 我的网站每天的访问量越来越多,我以为是机器人访问。我想阻止来自机器人的这种访问,所以上面的 robots.txt 代码可以阻止所有其他访问并允许访问 google、yahoo 和 msn?这适合我吗?
【解决方案2】:

为什么?

任何作恶的人(例如,收集电子邮件地址以发送垃圾邮件)都会忽略 robots.txt。因此,您只会屏蔽合法的搜索引擎,因为 robots.txt 合规性是自愿的。

但是——如果你仍然坚持这样做——这就是 robots.txt 中的User-Agent: 行的用途。

User-agent: googlebot
Disallow: 

User-agent: *
Disallow: /

当然,还有您希望从中获得流量的所有其他搜索引擎的行。 Robotstxt.org 有一个部分列表。

【讨论】:

  • “我只对大玩家刮我的网站没问题”对较小的、崭露头角的玩家来说并不好。我希望我能支持你的“为什么?”一千倍以上。我的意思是,如果您对当前的情况感到满意,即每个人都在 Google 的腿上,那么请务必排除所有其他爬虫。
  • 我不得不不同意,问题是,有很多新玩家,这给带宽带来了太大的压力,特别是如果你有一个每天都有数千个新链接的大型网站......那么你可能想摆脱那些仅占互联网搜索量 1% 的人,转而选择三巨头
  • @jjj 如果某个特定的机器人正在积极地抓取您的网站,您可以使用 robots.txt 要求它们停止。当然,如果它只是一个网站阻止除了谷歌之外的所有人,没有人会在意。但是,如果有相当一部分网站听从了您的建议,那么 robots.txt 将成为锁定 Google 垄断地位的标准,而其他所有机器人要么忽略它,要么假装成 Googlebot。
【解决方案3】:

根据您所谈论的国家/地区,有 3 个以上的主要搜索引擎。 Facebook 似乎做得很好,只列出了合法的:https://facebook.com/robots.txt

所以你的 robots.txt 可以是这样的:

User-agent: Applebot
Allow: /

User-agent: baiduspider
Allow: /

User-agent: Bingbot
Allow: /

User-agent: Facebot
Allow: /

User-agent: Googlebot
Allow: /

User-agent: msnbot
Allow: /

User-agent: Naverbot
Allow: /

User-agent: seznambot
Allow: /

User-agent: Slurp
Allow: /

User-agent: teoma
Allow: /

User-agent: Twitterbot
Allow: /

User-agent: Yandex
Allow: /

User-agent: Yeti
Allow: /

User-agent: *
Disallow: /

【讨论】:

    【解决方案4】:

    众所周知,robots.txt 是爬虫必须遵守的标准,因此只有表现良好的代理才会这样做。所以,放不放都无所谓。

    如果您有一些数据,您也没有在网站上显示,您可以更改权限并提高安全性。

    【讨论】:

      猜你喜欢
      • 2023-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-18
      • 2016-08-06
      • 1970-01-01
      • 1970-01-01
      • 2010-12-10
      相关资源
      最近更新 更多