#! (hashbang) and Google SEO

15
我已阅读了Google关于爬取启用AJAX的页面的规范。由于Google索引方法的一部分使用URL本身,那么转换为!#会对SEO产生负面影响吗?
例如,如果我有一个页面位于www.mysite.com/surfing,当用户搜索“冲浪”时,Google将很可能高度评价它,因为它在URL中有“冲浪”。对于www.mysite.com/#!surfing,是否也是如此,或者它会忽略哈希片段以权衡URL本身?

3
在 Google 实施 AJAX 爬取标准之前,该问题已得到回答。 - Eric Speelman
2
目前,自2015年起,Google已经弃用了其AJAX爬取方案。请参阅此页面,以获取新标准的完整概述:https://webmasters.googleblog.com/2015/10/deprecating-our-ajax-crawling-scheme.html - fedetibaldo
2
我投票关闭了这个问题,因为它不是一个编程问题,并且在 Stack Overflow 上是离题的。关于您网站的非编程问题应该在 [webmasters.se] 上提问。将来请在那里提出此类问题。 - Stephen Ostermiller
6个回答

13

也许您已经在Google Ajax抓取指南中读到了!#实际上被Google爬虫转换为?_escaped_fragment_的内容。那么让我们以您的例子为例:www.mysite.com/#!surfing,Google爬虫将看到这个链接,就像是www.mysite.com/?_escaped_fragment_=surfing。所以问题来了:对于Google SEO来说,带有参数?_escaped_fragment_=surfing的链接好还是没有参数的/surfing好呢? 搜索引擎代表已经多次确认,具有超过2个动态参数的URL可能不会被蜘蛛程序抓取,除非它们被认为非常重要(即有许多链接指向它们)。因此,除非您在url中使用太多参数,否则您不用太担心。如果您还没有这样做,您可以随时阅读详细的Google文档https://developers.google.com/webmasters/ajax-crawling/docs/getting-started。现在,只是一个建议-不要依赖#在您的AJAX网站上。使用history.pushState()将您的URL更改为任何您想要的内容。我只在不支持history.pushState()的浏览器上使用#!,如IE。与#!的SEO问题不是来自url,而是来自于为爬虫程序提供HTML快照所需的信息的服务器端处理困难。

3

1
传统上,从SEO的角度来看,井号(#)被用于避免以下问题:
- 内部竞争问题 - 联盟URL(这是一篇关于如何使用井号进行跟踪目的而不是在URL中使用问号的好文章) - 在页面上显示有限的内容(分页问题)
你所提到的用法是Google推荐的使AJAX页面能够被Google阅读的方法- https://support.google.com/webmasters/answer/174992?hl=en 有关井号及其SEO好处的更多信息,请查看此博客文章- https://digitalreadymarketing.com/adding-hash-in-urls-seo-benefits/

0

我认为这不会对您的SEO造成任何伤害。我从事SEO已经5年了,还没有遇到过这样的问题,所以不用担心。我的意见是您可以通过添加!# no harm! !来做到这一点。


0
这可能会导致问题,如果 Google 的爬虫认为可能存在无数种可能性,就像在 URL 中使用 ? 一样。但除此以外的答案是清晰明了的。

website.com/oreo-cookies

比起

更语义化且更易于人类和网络爬虫理解。

website.com/#!oreo-cookies

但这会产生重大影响吗?如果你是付费给我进行SEO的客户,我会告诉你,来自相关相关网站的相关关键词短语的传入文本链接要重要得多。我还会说,如果您正在提交XML网站地图供Google消化,并且许多流行的网站正在使用#!谷歌会找出并忽略它。

因此,最重要的是,如果我的内容值得链接,我会确保Google找到并索引了我的所有页面,我不会担心它。


0
在我个人的看法和8年的SEO和开发经验中,添加!#并不会造成任何伤害,但更取决于网站的其他参数。您是否有网站URL,这样我可以更深入地了解一下?

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