我应该如何将Angular网址放在sitemap.xml
?
现在我添加了这个:
https://www.domain.com/user-area#!/logon
但我认为谷歌不喜欢它。
我读过关于_escaped_fragment_
但我不明白这意味着什么。
答案 0 :(得分:4)
谷歌最近贬低了_escaped_fragment_
。在这里看他们的博客文章:
http://googlewebmastercentral.blogspot.com/2015/10/deprecating-our-ajax-crawling-scheme.html
无论如何,根据您所写的内容,您的服务器结构似乎还没有为_escaped_fragment_
做好准备。我不会在这里详细介绍它,因为它毕竟是折旧的。
无论如何,Google的机器人并不总是能够处理具有AJAX内容的网站(通过Javascript呈现的内容)。为了创建变通方法,Google建议将hashbang #!
添加到所有AJAX网站。 Bots能够检测到hashbang,并知道该网站有通过AJAX呈现的内容。然后机器人将通过用_escaped_fragment_
替换hashbang来请求AJAX页面的预渲染版本。但是,这需要托管AJAX页面的服务器了解_escaped_fragment_
并能够提供预渲染页面,这是一个难以设置和执行的过程。
现在,根据折旧博客文章,您在sitemap.xml
中输入的网址应该没问题,因为Google的机器人应该能够抓取,渲染和编制#!网址&#34 ;.如果您真的想知道Google是否能够理解您的网站,我建议您使用位于https://www.google.com/intl/en/webmasters/的网站管理员控制台。使用该工具,您可以使用谷歌注册您的网站,观察谷歌如何为您的网站编制索引,并在您的网站出现任何问题时收到通知。
总的来说,让谷歌为AJAX网站编制索引是一件痛苦的事。我强烈建议您使用网站管理员控制台并经常参考它。它确实有帮助。