gpt4 book ai didi

java - 为什么搜索引擎不能直接索引 Ajax 站点?

转载 作者:行者123 更新时间:2023-12-01 14:43:55 25 4
gpt4 key购买 nike

作为一名(GWT 开发人员),我理解 Ajax 站点动态呈现页面,例如,我制作的站点是单页并包含选项卡来呈现“页面”,例如“主页”、“关于我们”、“产品”、等等

然而,这些页面通常与哈希值( # )合并,如果我访问, http://example.com#HomePage 。或#Products它将“最终”呈现页面和内容...

现在,如果我将我的产品页面网站放在可抓取的静态博客网站上,例如:http://example.com#Products如果我点击这个网站,那么我的网站将在一些 ajax 调用后最终呈现产品。

但是,如果我从浏览器检查站点的“页面源”,页面仍然是相同的 html“ajax 内容为空”;这就是ajax网站无法索引的原因吗?搜索引擎不会将它们抓取的 URL 放入 HTML 单元中,以便它们可以呈现页面而不仅仅是获取静态页面?

无论如何,我看到了解决这个问题的实现,使用外部“爬虫”服务作为ajax站点的一部分,但是是否没有不需要设置此类外部服务/服务器的解决方案?

最佳答案

However, if I check the "page source" of the site from the browser the page is still the same html "empty from ajax content"; is this the reason why ajax site can't be indexed? Search engines don't put the URL they crawl in a HTML unit so they can render the page and not just get the static page?

是的,依赖 Ajax 获取内容的网站依赖 JavaScript 获取内容,并且搜索引擎索引机器人(通常)不会执行 JavaScript,因为:

  • 需要更多的 CPU/RAM 才能做到这一点
  • 很难确定哪些交互会带来新内容,哪些交互会做其他事情

Anyway, I saw implementations to workaround this issue, to use a external "crawler" service as part of the ajax site, however is there no solution that does not require to setup such external service / server?

首先不要依赖 JavaScript。建立一个可以使用常规链接的网站。如果你愿意的话,可以将 JavaScript 放在上面。使用pushState and friends当引入新内容时,用真实的 URL 更新地址栏。

简而言之,遵循 Progressive Enhancement 的原则和 Unobtrusive JavaScript

关于java - 为什么搜索引擎不能直接索引 Ajax 站点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15660159/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com