如何在网站上找到 sitemap.xml 路径?

45

我该如何找到网站的sitemap.xml文件?

例如访问stackoverflow/sitemap.xml 会返回404错误。

在stackoverflow/robots.txt中写着:

"这其实是不正确的,因为由于某些无可救药的原因,Sitemap路径必须是绝对路径而不是相对路径。Sitemap: /sitemap.xml"


我想知道是否有使用谷歌浏览器的“右键单击->检查”选项的解决方案。 - user3521099
5个回答

98

由于没有标准,所以也就没有保证。但通常情况下,网站地图会被自我标注并放置在根目录下,例如:

example.com/sitemap.xml

一些服务器对大小写敏感,需要注意这一点。如果在该目录下找不到地图文件,可以查看根目录下的机器人文件:

example.com/robots.txt

如果在机器人文件中找不到,则前往Google搜索:

site:example.com filetype:xml

这将限制搜索结果为目标域上的XML文件。此时需要基于你所使用的特定网站进行尝试和错误判断。如果通过以上Google搜索短语获得了多页搜索结果,则尝试进一步限制搜索结果:

filetype:xml site:example.com inurl:sitemap

或者

filetype:xml site:example.com inurl:products

如果仍然无法找到,请使用“右键单击 > 查看源代码”进行搜索(也称为“控制查找”或Ctrl + F),以查看代码中是否有对它的引用。


4
+1 用于查看 robots.txt 文件——这适用于根目录中没有 sitemap.xml 的网站。现在我们来处理另外的 20%…… - FredTheWebGuy

20

我认为关于站点地图的位置并没有一个标准。这就是为什么当您使用Google的网络管理员工具添加站点地图时,应该指定一个任意的URL。


3

2
使用Google搜索运算符来为您找到答案
使用以下代码在Google上搜索...

inurl:domain.com filetype:xml 点击此处查看网站地图搜索示例

将domain.com更改为您想要查找网站地图的域名。 这应该列出给定域名的所有XML文件...包括所有站点地图 :)

2
根据协议文档,网站设计者可以使用至少三种选项来通知搜索引擎sitemap.xml的位置:
  • 通过提供的界面通知每个搜索引擎位置
  • 将URL添加到robots.txt文件中
  • 通过HTTP向搜索引擎提交URL
因此,除非他们选择在robots.txt文件中发布sitemap位置,否则您无法真正知道他们放置了sitemap.xml文件的位置。

4
第四个选项:在 robots.txt 中指定的索引 sitemap.xml 中列出多个站点地图位置(http://www.sitemaps.org/protocol.html#sitemapIndexXMLExample)。 - eQ19

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接