我做了相当深入的研究,发现我可以在Google网站管理员工具中使用Googlebot-simulater来模拟我网站上的Google访问,并了解机器人如何看到我的网页与用户看到的内容.
结果看起来很不错,Google看到与我的用户完全相同的东西,并且所有页面/子页面都获得部分或完全状态.
我今天早上被告知的另一种方式是看谷歌在我的网站上看到的是google网站:domainname.这里列出了Google缓存的所有页面/子页面,通过点击不同的链接,您可以看到显示相应页面的视图.
这是我有点担心我错过了什么,因为无论我的页面从Goolgebot模拟得到的部分/完全状态,当我查看我的页面(使用第二种方法)时,页面都是空白的.
这是我第一次索引网页,我已经尝试了几天,但没有运气.是否有人能说出我做错了什么/错过了什么,或者至少指出了正确的方向?或者我应该多一点耐心?
解决方法
作为一个例子,搜索site:yoamoseguros.com并检查那里的缓存结果.该页面是在Angular中构建的,并且使用AJAX和pushstates完全加载,它显示和索引很好.
并且忽略了破碎的页面,几天前我做了一次失败的部署,完全破坏了重定向,搞砸了一切,谷歌有时间在我有机会删除它们之前将破坏的页面编入索引.有一次他们快速索引我的东西……:/
因此,如果您使用的是pushstates(html5mode)并且Google无法正确显示您的网页,那么还会有其他内容发生.检查你的robots.txt,你是否阻止Google阅读js文件或图像等静态内容?它需要访问这样的文件才能正确索引页面.
另外,确保你的片段只是“#”而不是“#!”.在后一种情况下,谷歌将假设你想使用html快照,并试图找到它们,并可能会失败.因此,如果您想使用更简单的pushstate版本,请确保您没有使用“#!”.
最后,Facebook不支持pushstates.所以Facebook仍然需要快照(或者只是在index.html中使用硬编码的og-tags,具体取决于你拥有的内容类型).