210

在 robots.txt 中,我可以为站点地图文件编写以下相对 URL 吗?

sitemap: /sitemap.ashx

还是我必须使用站点地图文件的完整(绝对)URL,例如:

sitemap: http://subdomain.domain.com/sitemap.ashx

为什么我想知道:

  • 我拥有一个新的博客服务 www.domain.com,它允许用户在 accountname.domain.com 上写博客。
  • 我使用通配符,所以所有子域(帐户)都指向:“blog.domain.com”。

在 blog.domain.com 我放了 robots.txt 让搜索引擎找到站点地图。但是,由于通配符,所有用户帐户共享同一个 robots.txt 文件。这就是为什么我不能使用第二种选择。现在我不能对 txt 文件使用 url 重写。(我猜更高版本的 IIS 可以处理这个问题?)

4

3 回答 3

335

根据sitemaps.org 上的官方文档,它需要是一个完整的 URL:

您可以使用 robots.txt 文件指定站点地图的位置。为此,只需添加以下行,包括站点地图的完整 URL

Sitemap: http://www.example.com/sitemap.xml
于 2013-01-08T15:33:59.507 回答
4

谷歌抓取工具不够聪明,它们无法抓取相对 URL,这就是为什么总是建议使用绝对 URL 以获得更好的可抓取性和可索引性。

因此,您不能使用此变体

> sitemap: /sitemap.xml

推荐的语法是

Sitemap: https://www.yourdomain.com/sitemap.xml

笔记:

  • 不要忘记将“站点地图”中的第一个字母大写
  • 不要忘记在“站点地图:”之后放置空格
于 2019-02-19T17:49:01.870 回答
-3

我亲爱的朋友,很好的技术和逻辑问题。在 robots.txt 文件中否,您不能使用站点地图的相对 URL;您需要使用站点地图的完整 URL。

最好使用“站点地图:https ://www.example.com/sitemap_index.xml ”

在上面的 URL 后冒号给出空格。我也喜欢支持迪帕克。

于 2019-08-23T06:30:48.903 回答