Google 搜索中出现的 AngularJS 应用程序问题

标签 angularjs search seo google-search

我有一个个人项目,耗费了我大约一年的空闲时间和精力,却没有获得可观的利润。我对它在 Google 中的显示有疑问,非常感谢在这里获得帮助。

这个项目(http://yuppi.com.ua - 类似于美国的 craiglist)是基于 Web 的 AngularJS 1.2 应用程序,它使用托管在 GoDaddy 上的 PHP rest API。为了使这个应用程序流行起来,它必须在互联网上非常明显并且在谷歌中非常容易搜索,并且用户必须能够通过社交网络或 Skype 共享页面。

根据谷歌规范,谷歌爬虫在索引之前不会运行javascript来获取网页内容,所以我添加了_escaped_fragment_页面来显示没有javascript的网页内容。例如:

Page: http://yuppi.com.ua/#!/items/sub/18/_
Dirty : yuppi.com.ua/?_escaped_fragment_=/items/sub/18/_ 

此脏页将重定向到此处,Google 将在此处查看内容。

 http://yuppi.com.ua/server/crawler_proxy/routee.php?path=/items/sub/18/  

基本上我在该页面的 HTML 文件上有两个版本。一个版本是用户可用的版本,它有样式、更多的 HTML 标签等。第二个版本是用于 Google 爬虫的版本——非常轻量级,没有任何样式。我希望在 Google 中看到指向我网站的干净链接,而不是脏链接。

因此,如果在 Google 中搜索一个网站的所有链接,您会看到其中一个链接显示为“脏”状态。 enter image description here

另一个问题是在 Skype 中共享链接。 当我向某人发送链接时,我期望此链接将转换为缩略图,但它并没有发生。相反,我看到了指向我网站的丑陋链接。

请帮助我了解如何取悦所有人:用户、Google 爬虫、GoDaddy 和我。

最佳答案

去年我在一个大项目中遇到了同样的问题,我们最终使用了:https://prerender.io/ .

这是一个预呈现系统,可与 phantomjs 浏览器一起检测机器人请求并呈现完整的 html 模板。它还会实例化缓存服务以不再呈现未更改的模板。

希望对您有所帮助。

关于Google 搜索中出现的 AngularJS 应用程序问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40470667/

相关文章:

html - 更新 View 时执行特定于 View 的 javascript

javascript - 嵌套 ng-repeat 并针对重复数据打开特定索引

java - Java 中的范围查找

php - 使用 php 对大型词典执行搜索

仅适用于网站模块的 Angular Universal

javascript - 遍历 angular.element 的正确方法

angularjs - 无法从 AngularJS 读取 null 的 'substring' 的属性

javascript - 在 JS 对象中通过 id 查找子对象并推送到它

html - 什么是使现有网站具有响应性而又不会失去良好搜索引擎排名的良好设计策略

html - 丰富的片段重复 - 有害吗?