我可以保护我的sitemap.xml,以便只有searchengines可以下载它?

我正计划在我的站点地图中添加一些聚合页面列表,我不想让外部人员太容易刮擦。 我可以保护我的sitemap.xml,以便只有searchengines可以下载它?

安装防火墙? 我正在使用IIS6。

如果不匹配正确的用户代理或IP地址,那么您可以重写规则,将sitemap.xml的请求redirect到404页面。

我没有这样的重写规则,但我99%确定这是可能的。

正如丹尼斯指出的那样,欺骗这件事很容易。 另外,确保你没有意外排除search引擎将是困难的。

假设您想允许Google,Yahoo和Bing来蜘蛛网站。 因此,您只允许访问相关用户代理的站点地图。 现在有两个问题:

如果一项服务改变了用户代理呢? 如果你需要包括一个不同的服务呢? 您现在必须在服务能够看到站点地图之前重写您的规则。

为什么我不作为一个网站劫持者,只是粗暴地报告我是一个Google蜘蛛? 用许多不同的语言来指定一个用户代理是可能的(也是容易的),加上许多浏览器,比如FireFox和Safari。

所以,简短的回答是:“不,但可以让它变得更难,但这会给你带来负担。”

你怎么知道什么是和不是search引擎? 用户代理是可以replace的 – 但是如果遇到不知名的用户代理,就把它放在一边,你知道它是浏览器还是search引擎吗? 有数百家公司使用search引擎,所以只要允许Google,Bing等人的IP在这里就不够了。

试图保持search引擎的站点地图是一种通过默默无闻的安全forms,任何关心的人都不会被任何合理的阻止他们的企图阻止。