我有一个个人项目,耗费了我大约一年的空闲时间和精力,却没有获得可观的利润。我对它在 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 中搜索一个网站的所有链接,您会看到其中一个链接显示为“脏”状态。
另一个问题是在 Skype 中共享链接。 当我向某人发送链接时,我期望此链接将转换为缩略图,但它并没有发生。相反,我看到了指向我网站的丑陋链接。
请帮助我了解如何取悦所有人:用户、Google 爬虫、GoDaddy 和我。
最佳答案
去年我在一个大项目中遇到了同样的问题,我们最终使用了:https://prerender.io/ .
这是一个预呈现系统,可与 phantomjs 浏览器一起检测机器人请求并呈现完整的 html 模板。它还会实例化缓存服务以不再呈现未更改的模板。
希望对您有所帮助。
关于Google 搜索中出现的 AngularJS 应用程序问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40470667/