gpt4 book ai didi

cdn - 如何禁止在源服务器上进行爬网,同时又能正确传播 robots.txt?

转载 作者:行者123 更新时间:2023-12-02 20:27:42 24 4
gpt4 key购买 nike

我遇到了一个相当独特的问题。如果您负责扩展大型站点并与 Akamai 这样的公司合作,您就会拥有 Akamai 与之通信的源服务器。无论您向 Akamai 提供什么服务,他们都会在其 CDN 上传播。

但是你如何处理robots.txt呢?您不希望 Google 抓取您的来源。这可能是一个巨大的安全问题。想想拒绝服务攻击。

但是,如果您在源上提供带有“禁止”的 robots.txt,那么您的整个网站将无法抓取!

我能想到的唯一解决方案是向 Akamai 和全世界提供不同的 robots.txt。不允许全世界,但允许 Akamai。但这非常老套,而且容易出现很多问题,以至于我一想到它就感到畏缩。

(当然,源服务器不应该对公众可见,但我敢说大多数都是出于实际原因......)

协议(protocol)似乎应该更好地处理这个问题。或者也许在搜索引擎的网站管理员工具中允许特定于站点的隐藏 robots.txt...

想法?

最佳答案

如果您确实希望不公开您的来源,请使用防火墙/访问控制来限制 Akamai 以外的任何主机的访问 - 这是避免错误的最佳方法,也是阻止机器人和攻击者简单地进行攻击的唯一方法扫描公共(public) IP 范围寻找网络服务器。

也就是说,如果您只想避免非恶意蜘蛛,请考虑在源服务器上使用重定向,该重定向会将任何没有 Host header (将您的公共(public)主机名指定为正式名称)的请求。如果您有规范主机名的变体,您通常需要类似的东西,以避免困惑或搜索排名稀释的问题。对于 Apache,这可以使用 mod_rewrite甚至是一个简单的 virtualhost设置默认服务器具有 RedirectPermanent/http://canonicalname.example.com/

如果您确实使用此方法,您可以简单地将生产名称添加到测试系统的 hosts file 中。必要时,或者还创建一个仅供内部使用的主机名并将其列入白名单(例如 cdn-bypass.mycorp.com),以便您可以在需要时直接访问源。

关于cdn - 如何禁止在源服务器上进行爬网,同时又能正确传播 robots.txt?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5963178/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com