我发现 AngularJS 应用程序有两个关于搜索引擎和 SEO 的问题:
- 自定义标签会发生什么?搜索引擎会忽略这些标签中的全部内容吗?即假设我有
<custom>
<h1>Hey, this title is important</h1>
</custom>
尽管在自定义标签内, <h1>
会被索引吗?
- 有没有办法避免索引 {{}} 的搜索引擎按字面意思绑定? IE
<h2>{{title}}</h2>
我知道我可以做类似的事情
<h2 ng-bind="title"></h2>
但是如果我真的想让爬虫“看到”标题怎么办?服务器端渲染是唯一的解决方案吗?
原文由 luisfarzati 发布,翻译遵循 CC BY-SA 4.0 许可协议
2014 年 5 月更新
Google 抓取工具 现在执行 javascript - 您可以使用 Google 网站管理员工具 来更好地了解 Google 如何呈现您的网站。
原始答案
如果您想针对搜索引擎优化您的应用程序,不幸的是,没有办法向爬虫提供预渲染版本。您可以 在此处 阅读有关 Google 对 ajax 和 javascript-heavy 网站的建议的更多信息。
如果这是一个选项,我建议阅读 这篇文章,了解如何使用服务器端渲染为 Angular 进行 SEO。
我不确定爬虫在遇到自定义标签时会做什么。