angularjs - Angular 和 SEO - 最新的最佳实践是什么?

标签 angularjs search seo search-engine search-engine-bots

我有一个有 Angular 的应用程序,现在正在考虑为 SEO 目的进行微调。

看了很多文档和教程,我很困惑!我知道在过去您必须使用预渲染服务。但随后谷歌更新了它的机器人以更好地抓取 JavaScript。鉴于此,我不太了解现在改进爬虫和索引的最佳实践是什么?

我目前的设置是我有一个站点地图并将我的 URL 从 ! 转换为 #! 而且,我还没有启用 html5 模式.

最佳答案

只要按照这三个参数,就可以了。

1) 遵循这篇文章中关于使用 Phantom.js 和自定义缓存层生成页面快照的建议。确保每个页面都有一个友好的 URL,并在 sitemap.xml 文件中提供所有 URL 的列表。不是在请求的 URL 中包含 ?_escaped_fragment_= 参数时提供快照,而是在已知搜索引擎用户代理(如 GoogleBot)请求页面时提供快照。

2) 使用 Prerender.io 等服务

3) 让你的 AngularJS 在没有预渲染的情况下被谷歌渲染,看看会发生什么。请使用 HTML5 history API 更新浏览器中的可见 URL,而无需使用 #!如果你能避免的话。大多数开发人员都同意 #!并不理想,它们肯定会增加网站 SEO 的复杂性。

关于angularjs - Angular 和 SEO - 最新的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32253726/

相关文章:

asp.net-mvc - 使用 ASP.NET MVC 实现 Google 的 hashbang/Ajax 抓取?

c++ - 应用程序首先崩溃 strcat_s

ruby-on-rails - 在 Ruby On Rails 上使用 PhantomJS 进行动态页面的服务器端渲染

seo - 来自您域根的 302 是否会对您的谷歌排名产生不利影响?

javascript - jquery-free-transform + AngularJS

javascript - 将 ES6 箭头函数转换为 ES5 函数 JavaScript

elasticsearch - 结合使用filter和function_score- Elasticsearch 不会计算得分?

apache - Apache 上的 Angular 2 |搜索引擎爬虫

angularjs - 为什么我得到 Lexerr :unterminated quote error?

android - $http 调用不适用于 Ionic Android 构建