我们在Stack Overflow上使用了站点地图,但对此我有不同的感觉。

Web爬网程序通常从站点内链接和其他站点发现页面。 Sitemaps补充了这些数据,以允许支持Sitemaps的爬网程序拾取Sitemaps中的所有URL,并使用关联的元数据了解这些URL。使用Sitemap协议并不能保证网页会包含在搜索引擎中,但是会为网络抓取工具提供提示,帮助他们更好地抓取您的网站。

基于我们两年来对Sitemap的经验,该站点地图从根本上有些悖论:

该站点地图用于难以正确爬网的站点。
如果Google无法成功爬网您的站点以找到链接,但能够在站点地图中找到它不会赋予站点地图链接任何权重,也不会为其编制索引! ,使用站点地图将无济于事!
Google竭尽全力不提供站点地图保证:或添加到索引“ citation
”中,我们不保证将对您的所有URL进行爬网或索引。例如,我们不会对图像URL进行爬网或索引ined in your Sitemap。“ citation
“提交站点地图并不能保证您的站点的所有页面都会被抓取或包含在我们的搜索结果中” citation

鉴于站点地图中的链接仅是建议,而链接在您自己的网站上找到的被认为是规范的...似乎唯一合乎逻辑的事情是避免拥有站点地图,并确保Google和任何其他搜索引擎都可以使用其他所有普通的旧标准网页正确地爬行您的网站见。
到您这样做时,您会变得越来越好,彻底,以便Google可以看到您自己的网站链接到这些页面,并愿意抓取这些链接-嗯,为什么我们又需要一个站点地图?该站点地图可能会造成有害影响,因为它分散了您的注意力,无法确保搜索引擎蜘蛛能够成功抓取您的整个网站。 “哦,抓取工具是否可以看到它都没关系,我们只需在站点地图中拍打那些链接!”现实与我们的经验恰好相反。
考虑到站点地图是用于链接或链接的集合非常复杂的网站的,这似乎有点讽刺。根据我们的经验,该站点地图无济于事,因为如果Google在您的网站上找不到正确的链接,则无论如何它都不会从该站点地图建立索引。我们已经一次又一次地看到了关于堆栈溢出问题的证明。
我错了吗?站点地图有意义吗,我们不知何故只是不正确地使用它们?

评论

我认为站点地图在更简单的时代更像是一种更简单的工具...我有点想出了如今提供站点地图的唯一原因是尽管在技术上偏向人类,但仍需要人工协助来导航站点。我看不到“如果您的网站没有得到适当的爬网(无论出于何种原因),使用站点地图将无济于事!”但可能只是我。

虽然我知道Google会吸引您的大部分流量。我认为了解其他蜘蛛似乎如何使用站点地图非常重要。

@mikej google并不是我们流量的“大头”,它是所有搜索流量的99.6%和总流量的87%

杰夫,永远喜欢您的帖子...我只将XML网站地图用于Google可能找不到的页面。但是,实际上,我对它们和Google网站站长工具不满意。老实说,我认为Google在索引网站上的可用内容方面做得很好。没有意义的站点地图。现在,用于用户导航的站点地图是一个明智的主意。我喜欢Web.2.0页脚站点地图,并尝试将它们纳入几乎适用于...的任何设计中。

@Jeff Atwood:John Mueller说:“我们会选择未链接的URL并为其编制索引” –这是否解决了悖论?

#1 楼

免责声明:我与Google的Sitemaps团队一起工作,因此,我有些失落:-)。新闻等),我们将Sitemaps文件中包含的URL信息用于以下主要目的:


发现新的和更新的内容(我想这很明显,是的,我们确实拾取并索引其他未链接的URL)
识别用于规范化的首选URL(还有其他方法可以处理规​​范化)
在Google网站管理员工具中提供有用的索引URL计数(来自网站的近似值:查询不能用作指标)
为有用的抓取错误提供依据(如果Sitemap文件中包含的网址存在抓取错误,这通常是个大问题,并且在网站站长工具中单独显示)

在网站管理员方面,我还发现Sitemaps文件非常有用:


如果您使用抓取工具来创建Sitemaps文件,那么您可以轻松地检查您的网站是否可抓取,并直接查看找到的网址类型。搜寻器是否找到了您的首选URL,或者配置不正确?搜寻器是否卡在了某个地方的无限空间(例如无尽的日历脚本)中?您的服务器能够处理负载吗?
您的网站实际上有多少个页面?如果您的站点地图文件是“干净的”(没有重复等),则很容易检查。
您的站点真的可以干净地爬网而不会遇到重复的内容吗?将Googlebot留下的服务器日志与您的Sitemaps文件进行比较-如果Googlebot正在抓取Sitemaps文件中没有的URL,则您可能需要仔细检查内部链接。
您的服务器是否遇到了首选URL的问题?使用Sitemaps网址交叉检查服务器错误日志会非常有用。如上所述,此计数在网站站长工具中可见。

对于很小的,静态的,易于爬网的站点,从站点的角度来看,从Google的角度来看,使用Sitemaps可能是不必要的。除此之外,我真的建议您使用它们。

FWIW我也要解决一些误解:


Sitemap文件不是要“修复”可爬网性问题。如果无法抓取您的网站,请先进行修复。
我们不使用Sitemap文件进行排名。
使用Sitemap文件不会减少我们对您网站的正常抓取。它是附加信息,而不是替代爬网。同样,在Sitemaps文件中没有URL并不意味着它不会被索引。
不要大惊小怪的元数据。如果您不能提供有用的值(例如优先级),请不要使用它们,不要担心。


评论


您确实使用Sitemap进行“自我排名”,对吧?我的意思是在一个网站上对内容进行排名。否则为什么优先级字段?

–心怀不满的山羊
2010年11月8日,0:10

“优先级”元素对我们来说是一个很小的信号,如果我们在您的网站上抓取非常有限,我们可能会使用它(我们不将其用于排名目的)。对于大多数站点而言,这不会成为问题,因此可以轻松提供有用的值就可以了,但如果不能提供有用的值,那也可以避免失眠。如果您不能为此元素和其他元数据元素提供有用的值,则只需将这些元素完全删除(不要使用“默认”值)。

–约翰·穆勒(John Mueller)
2010年11月8日9:57



感谢您提供的丰富信息。从现在开始,我将停止更新站点地图,而仅将RSS feed用作站点地图。

–斯蒂芬·穆勒(Stephan Muller)
2010年12月2日,16:14

具有100个级别的信息是否是“可爬性问题”?例如,如果我有一个网上商店,并且类别中的产品列表很长(例如3000种产品)。该列表分页显示,共有200页。自然,我不会显示所有链接。例如1 2 3 ... 22 ** 23 ** 24 ... 198 199200。因此,要在第100页上查找产品,您需要通过约100个链接。或使用搜索栏。 googlebot会抓取它,还是在20个左右的级别后放弃?网站地图会是这里的合适解决方案吗?

– Vilx-
2012-12-14 8:17



@ Vilx-:如果通过get和next / prev按钮进行工作,则会找到它们。此外,还有用于您的上一个/下一个元标记的标头,这些标记可以显示漫游器在哪里可以找到下一个/上一个页面,并告诉他们“下一个是同一页面,只有接下来的几个项目,所以请谨慎对待重复”

–马丁(Martijn)
15年1月8日在10:55

#2 楼

如果您知道自己的网站架构良好,并且Google会自然地找到您的页面,那么我所知道的唯一好处就是索引编制速度更快,如果您的网站索引编制速度足够快,那么您就不需要了。

这里有2009年的一篇文章,一位先生们测试了有无站点地图时Google抓取其网站的速度。
http://www.seomoz.org/blog/do-sitemaps-effect-crawlers

我的经验法则是,如果您要发布未经测试的新内容,则想看看Google会对您的网站进行爬网,以确保没有需要修复的内容,因此请勿提交。但是,如果您要进行更改并希望Google更快地查看它们,那么请提交,或者您还有其他时间敏感信息(例如中断新闻,然后提交,因为您想尽一切努力确保自己是第一个Google看到的人,否则就成为您的偏爱。

评论


RSS feed不会完成相同的事情吗?

–Virtuosi Media
2010年11月2日,22:17

当然,使用RSS feed可以做很多事情来改善索引编制,但是,我上面链接的文章中的数据表明,站点地图比RSS feed更有效。

– Joshak
2010年11月3日,2:15

#3 楼

我怀疑:对于Google来说,站点地图对于以最快的方式跟踪更新是必要的。例如,假设您已将新内容添加到网站的某个深层位置,这需要10到20次以上的点击才能到达您的首页。对于Google来说,在短时间内访问该新页面的可能性较小-因此,在完全确定该页面的路径之前,要宣布它的存在。毕竟,PageRank并不是立即计算出来的,它需要时间来评估用户的行为,所以-在那之前,为什么引擎不应该爬网并为包含新鲜内容的页面编制索引?

评论


像stackoverflow这样的网站经常被抓取,所以我敢打赌它比使用站点地图更快。

–John Conde♦
2010年11月1日23:55

@john仍然是,这是我能想到的站点地图实际上可以为您做的唯一合理的解释。 “不能伤害”是一种常见的说法,但是仅存在站点地图是有害的(其他复杂性等),因此,如果它没有帮助,那么它仍然是一个负面的净结果,必须解决。

–杰夫·阿特伍德
2010年11月2日,0:01



@杰夫我没有不同意。我只是说SO不适合这种模式。

–John Conde♦
2010年11月2日,0:07

这可以通过Joshak提供的链接得到确认:seomoz.org/blog/do-sitemaps-effect-crawlers

–杰夫·阿特伍德
2010年11月2日,凌晨1:25

@Jeff Atwood“ @John still,...”这就是我试图提出的重点。起初它是有益的,但现在您不需要它了。那么,为什么您要坚持拥有它呢?

– jcolebrand
10-11-2在17:26



#4 楼

如果正确使用站点地图,它们将具有不可思议的价值。

首先,谷歌表示它们只是提示,这一事实仅是为了a)确保网站站长不会误以为站点地图= b)如果Google认为某些站点地图不可靠,则可以忽略它们(akalastmod是每天访问的所有URL的当前日期。)

但是,Google通常喜欢并消费网站地图(实际上,有时它们会找到自己的地图并将其添加到Google网站站长工具中)。为什么?它提高了他们爬行的效率。

他们可以从提交的站点地图中分配适当数量的爬网预算,而不是从种子站点开始并对网络进行爬网。他们还可以使用相关的错误数据(500、404等)建立大量的网站历史记录。

来自Google:

”“ Googlebot通过跟踪来自一页到另一页,因此,如果您的网站链接不好,我们可能很难发现它。”最好有一个备忘单(又名Sitemap)。

当然,从抓取角度来看,您的网站可能还不错,但是如果您要引入新内容,则可以将该内容放入Sitemap中高优先级是一种较快的方式来进行爬网和建立索引。

这也适用于Google,因为他们想快速地查找,抓取和索引新内容。现在,即使您不认为Google宁愿选择人迹罕至的方法也不愿使用丛林砍刀,但站点地图还是很有价值的另一个原因-跟踪。 //sitemaps.org/protocol.php#index),您可以将网站分为多个部分-网站地图。这样,您就可以逐节查看网站的索引编制率。

一个部分或内容类型的索引率可能为87%,而另一部分或内容类型的索引率可能为46%。这是您的工作,找出原因。

要充分利用站点地图,您需要(通过网络日志)跟踪网站上的Googlebot(和Bingbot)抓取,将其与站点地图进行匹配,然后一直跟踪以进行访问。 br />
不要睡在站点地图上-进行投资。

评论


我不同意,站点地图曾经是有目的的,但根据我的诚实观点,现在它们已经过时了。如果您的网站可抓取,它将使用RSS,社交媒体找到那些链接,这是Google更快地查找页面和为其建立索引的绝佳方法。

–西蒙·海特(Simon Hayter)♦
13年2月12日在23:31

#5 楼

用Google的话来说:“在大多数情况下,网站管理员都可以从提交站点地图中受益,在任何情况下您都不会受到惩罚。”

但是我同意,如果您愿意出现在搜索引擎中的网站页面是为了确保它们可以从网站正确地抓取。

评论


仍然存在精神成本,因为无论您的网站的爬网状态如何,都可以保证对链接进行索引被视为“安全”,这在我们的经验中是不正确的。

–杰夫·阿特伍德
10-11-1在23:58



#6 楼

我相信搜索引擎不是在查找页面时使用站点地图,而是在优化它们检查更新频率的方式上。他们看<changefreq><lastmod>。 Google可能经常搜寻整个网站(请检查您的日志!),但并非所有搜索引擎都具有这样做的资源(有人尝试过Blekko吗?)。无论如何,由于使用它们没有任何罚款,并且可以自动轻松地创建它们,因此我会继续这样做。

评论


我相信字段非常重要,可以让他们知道哪些页面最重要。例如,在Stack Overflow上,您有数百个标记和用户页面,它们很好,但远不及问题本身重要。如果站点地图将问题优先级设置为1,而其他所有条件都较低,则问题很可能会在其他页面上被索引。

–心怀不满的山羊
10-11-2在10:22

#7 楼

如果您关心这个主题,请阅读这份出色的Google论文http://googlewebmastercentral.blogspot.com/2009/04/research-study-of-sitemaps.html(2009年4月)-阅读完整的论文,而不仅仅是博客文章。

论文中的内容


好吧,基本上Google都在为同样的问题而苦苦挣扎。但是他们提到了从起始页到站点地图的虚拟链接的概念。
很多其他有趣的东西

但是是的,站点地图主要用于发现(Google发现您的东西),而不是用于价值确定。如果您在发现方面遇到困难,请使用站点地图。发现是爬网的先决条件,但不会影响价值确定。

根据我的经验


有很多站点只使用HTML和XML站点地图来链接其页面, ,与HTML网站地图相比,XML网站地图的抓取要好得多。 (我对一些非常大的站点进行了很好的观察)
甚至有非常成功的站点仅使用XML站点地图。

当我为超过一半的站点实施SEO策略时我要浏览一百万个页面


着陆页
sitemap.xml
起始页

其他所有东西都只是“麻烦”-是的,其他东西可能具有正SEO值,但肯定具有负值:这使站点更难管理。 (ps:为了确定价值,我以一种有意义的方式链接着陆页(影响很大),但这已经是第二步了。)关于您的问题:

关于您的问题:请不要混淆发现,爬网,索引和排名。您可以分别跟踪它们,也可以分别优化它们。并且您可以通过出色的(即实时)站点地图以一种主要方式来增强发现和爬网的功能。

#8 楼

Sitemap可以节省您的资产。

在我的一个网站上,我有很多链接,这些链接阻止了搜索引擎的爬行。长话短说,Google在我的论坛中误解了JS,并触发了500和403响应代码,我认为这影响了网站的位置。为了解决这个问题,我通过robots.txt排除了有问题的网址。

有一天,我搞砸了,做了一些事情,阻止了Google抓取该网站上我真正想要索引的页面。由于论坛的排除,“受robots.txt限制”的“网站站长工具”错误部分包含4000多个页面,因此,在为时已晚之前,我不会选择此错误。

幸运的是,由于我网站上的所有“重要”页面都在站点地图中,因此我能够在网站站长工具针对站点地图中的页面问题而遇到的特殊错误类别中快速检测到此问题。

另外,正如@AJ Kohn所述,使用Sitemap索引确定网站各部分的索引质量也使我受益匪浅。

#9 楼

我本人并没有遇到这个问题,但是我的大部分项目都是需要用户帐户的应用程序或网站,因此搜索引擎编制索引并不是重点。在此之前,SEO基本上使站点地图无用。如果您看一下协议,它就是一种“荣誉系统”,可以告诉您页面更改的频率以及每个页面的相对优先级是多少。毫无疑问,一角硬币SEO公司滥用这些字段-每页都是头等大事!每页每小时更改一次! -并有效地渲染了站点地图。

这篇2008年的文章基本上说了这一点,并且似乎得出了与您相同的结论:站点地图非常无用,最好将内容优化为索引并放弃站点地图。

#10 楼

让它爬行。

我执行以下操作:


以旧的方式使站点可爬行。 txt,上面带有站点地图指示。
制作一个XML站点地图,但不提交。让搜寻器在发现和建立索引过程中根据需要发现和使用它。

我生成了扩展的XML文件,该文件可作为许多事情的基础: br />生成HTML网站地图
帮助404(未找到)页面
帮助其他小任务,例如制作面包屑或在页面的Facade模式中获取一些元数据。

因此,我确实拥有所有这些,为什么不还提供xml网站地图,并让搜寻器按照自己的意愿去做呢?

#11 楼

杰夫,我对Stackoverflow一无所知,因为我一生中从未有机会成为如此庞大且经常更新的网站的网站管理员。

对于那些不经常更改的小型网站网站地图非常有用(不是说网站地图是最重要的,但是非常有用的),其原因有两个:


该网站很快被抓取(同样的原因,上面Joshak回答解释了)根据我的小经验,我在小型网站(最多30/50页)中注意到了很多次。
几周后,我提交了一个站点地图,然后查看“ Google网站站长工具-站点地图”,然后可以看到在站点地图中提交的URL与Web索引中的URL数量。如果我发现它们相同,那就很好。否则,我可以立即在我的网站上检查哪些页面没有被索引以及为什么。


#12 楼

这是Randfish在2007年的好年头在SEOmoz上写的(第一个?)。他第一次得出相同类型的结论,但后来事情就变成了……并且过去了。 >
从那以后(2009年1月),他在文章中添加了一个附言,指出生成,验证和提交站点地图的总体积极结果完全抵消了任何可能的弊端。


更新时间:2009年1月5日-实际上,我对有关此建议的想法有了很大的改变
。是的,站点地图仍然可以掩盖建筑问题,但是鉴于我在过去1.5年中的经验,我现在向所有客户(以及几乎所有提出要求的其他人)推荐)提交站点地图。在抓取,建立索引和访问量方面的积极优势远远超过了弊端。


#13 楼

我相信现在Sitemaps仅用于两个目的:


它们使您可以减少蜘蛛网的频率来减轻服务器负载。对于大多数网站来说,这实际上不是问题。
它们可以帮助加强搜索引擎已经知道的关于您的信息。列出页面名称,并显然在每个页面上添加适当的权重,有助于搜索引擎验证其自己的度量标准,从而对您的网站体系结构进行排名。


#14 楼

不要使用SITEMAPS

Sitemaps主要用于没有时间戳索引和节点的网站...。SE都针对其核心内容,所以拥有Sitemap会减慢搜寻器的速度...是,没错,它会减慢速度,因为站点地图缺少核心索引具有的元数据。另一方面,我不知道google如何构建它的机器人,只知道如果我要去机器人SE,就不会使用站点地图。另外,某些网站甚至都没有注意到他们的站点地图全都是%!@ $;如果您在站点地图上构建了一个配置文件,而该配置文件突然无法正常工作,则必须在该站点上创建一个新的配置文件真实网站。

所以,您是对的-请勿使用SITEMAPS!尽可能表示“已问一个小时前”是否嵌入了元数据,如:

relativetime已更改。从来没有... :-)

#15 楼

我最近重组了一个仍在工作的网站。因为我看不到链接500,000页来帮助用户的好方法,所以我决定使用XML网站地图并将其提交给Google,然后改为使用网站搜索。 Google较早地为我的网站编制索引没有问题,但是,自从添加了站点地图以来,Google在抓取我的网站并极其快速地为页面编制索引方面非常积极。 Google已使用该站点地图查找新页面(每周约3300个)并重新访问更新的页面。这是我书中真正的胜利。我仍然想找到一种链接页面和使用AJAX进行查找的新方法,但这是另一天的项目。到现在为止还挺好!对我来说这是一个很好的解决方案。总而言之,我有所收获,而没有失去。这很有趣,因为我一直认为站点地图实际上可能更有用,但受其设计限制。

#16 楼

我听说站点地图可以更快地将您的页面添加到补充索引中。但是我什至没有听过很久以前提到的补充索引,因此他们可能不再使用它了。

P.S.如果我的陈述不够清楚,则在补充索引中是(或曾经)是一个坏东西...因此,站点地图是(或曾经是)一个坏。

#17 楼

我们使用站点地图(未提交给搜索引擎,但在robots.txt中进行了链接)主要是为了确保首页具有最高的<priority>。我不确定它们是否还有其他用途。

#18 楼

我不同意Google不会索引仅站点映射的链接。我有很多站点,这些站点的页面只能通过站点地图访问,而Google对其进行索引却没有问题。我可以举很多例子。

评论


这些页面还在您的网站之外链接吗?

–杰夫·阿特伍德
2010年11月2日,19:40

#19 楼

一个结构良好的网站虽然可以帮助我们进行覆盖和排名,并且不需要额外的值,例如优先级,更新频率等,但不需要站点地图。您可以告诉搜索引擎,嘿...我已经更新了此页面我网站中间的某个位置而无需完全爬网。我从没看过爬网模式,但是希望它能对您有所帮助。