我使用angularjs和web api开发了一个网站。
问题是google无法抓取ajax呈现的内容。没有人可以使用谷歌搜索找到该网站。
阅读了很多关于这个问题的文章,包括:
This one with all links of explanation going out, Google ajax crawling protocol以及stack over flow question,我无法找到合适的解决方案。那些提到asp.net解决方案的人,正在谈论mvc,我只需要通过web api进行简单的REST,其他文章不是在谈论asp.net。
有没有简单的解释?
答案 0 :(得分:1)
我很久以前就是那个问同样问题的人,所以我会从我的经验中回答:
首先,如果您的所有内容都可以通过唯一的URI访问(如果您使用它,则包括hashbang),现代搜索引擎应该将其编入索引。事实上,谷歌现在可以索引javascript生成的内容。您可以通过Google网站管理员工具试用,并查看您的网站的编制方式。
其次,有些库可以帮助您根据需要向搜索引擎提供已解析的内容,但在我的情况下,由于Google正在很好地索引js,因此我没有太多关注它。
答案 1 :(得分:0)
我见过其他人问这个问题,也许我错过了什么或者这已经过时了,但我不明白为什么AngularJS需要成为SEO的问题。
假设您有一个目标网页,它有一堆链接。假设您在AngularJS中使用html5模式(并且我不确定100%是必要的)和ng-route之类的东西那么着陆页上的链接既可以作为“角度”(JavaScript)链接,也可以作为“旧学校”使用(整页加载)链接。
如果您是人类用户,则可以单击链接,它将执行角度魔术并调整内容而不加载整页。好的,一切都很好。
但是,如果您复制链接并将其粘贴到新标签页或新浏览器中,它仍然有效 - 假设您已正确设置路线。
我不是任何想象力的搜索引擎优化专家,但据我所知,拥有加载页面并让这些页面具有真实有用内容的链接是SEO的核心,并且这样做,AngularJS应该工作得很好。要检查的关键是复制并粘贴链接(而不是单击它)它的工作原理。