Robots.txt - 防止 .html 文件的索引

保罗·B

我想阻止对我们网站上的 *.html 文件进行索引 - 以便只对干净的 url 进行索引。

所以我想要www.example.com/en/login索引但不是www.example.com/en/login/index.html

目前我有:

User-agent: *
Disallow: /
Disallow: /**.html   - not working
Allow: /$
Allow: /*/login*

我知道我可以禁止例如Disallow: /*/login/index.html,但我的问题是我有一些我不想索引的 .html 文件 - 所以想知道是否有办法禁止它们而不是单独执行它们?

用户65839

首先,您一直在使用“已编入索引”这个词,所以我想确保您知道 robots.txt 约定只是建议自动抓取工具避免使用您域中的某些 URL,但在robots.txt 文件仍然可以显示在搜索引擎索引上,如果他们有关于页面的其他数据。例如,谷歌明确表示他们仍会索引并列出一个 URL,即使他们不被允许抓取它。我只是想让你意识到这一点,以防你使用“索引”这个词来表示“在搜索引擎中列出”而不是“被自动化程序抓取”。

其次,没有标准的方法来完成你的要求。根据“网络机器人页面”:

还要注意,在 User-agent 或 Disallow 行都不支持通配符和正则表达式User-agent 字段中的“*”是一个特殊值,表示“任何机器人”。具体来说,你不能有像“User-agent: bot ”、“Disallow: /tmp/*”或“Disallow: *.gif”这样的行。

话虽如此,这是许多爬虫支持的常见添加。例如,在他们支持的指令的 Google 文档中,他们描述了模式匹配支持,该支持确实使用 * 作为通配符进行处理。因此,您可以添加Disallow: /*.html$指令,然后 Google 不会抓取以 结尾的网址.html,尽管它们仍可能出现在搜索结果中。

但是,如果您的主要目标是告诉搜索引擎您认为“干净”和首选的 URL,那么您实际上要查找的是指定规范 URL您可以link rel="canonical"在每个页面上放置一个元素以及该页面的首选 URL,使用该元素的搜索引擎将使用它来确定显示该页面时首选的路径。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章