【问题标题】:How to SEO a site generated mostly by Javascript?如何对主要由 Javascript 生成的网站进行 SEO?
【发布时间】:2012-07-10 08:17:26
【问题描述】:

我犯了一个错误,即根据请求(来自 XML 文件)通过 Javascript 生成几乎所有我的内容。现在我了解到这对 SEO 来说是可怕的。从那以后我也了解了progressive enhancement,很遗憾我也错过了那条船。

我一直在研究剩余的 SEO 选项,并遇到了 Google 的 AJAX-crawlable 建议,但随后阅读了很多关于为什么 hashbang 不好的有根据的意见。

无论我使用什么选项,深度链接对我来说也很重要。我目前正在使用JQuery-BBQ,它适用于深度链接,但对搜索引擎没有任何帮助。我正在考虑切换到更好地支持 HTML5 历史状态的选项,例如 History.js。这将有助于清理 URL 并避免散列,但我不确定它是否真的会对 SEO 产生影响,因为我的所有内容都是从 XML 文件动态生成的。

我还有哪些选择可以实现体面的 SEO?请只戴白帽,不要伪装。

请注意,我主要关注的是 SEO,而不是可访问性 - 这是一个个人作品集网站,我可以接受我的内容对某些人不可见,但我不同意它对蜘蛛不可见。 Here's the site(正在进行中,但主要是在架构上)。

编辑: 是的,我知道有许多类似于此问题的 SO 问题,但其中大多数都有需要进行重大重组的答案。如果我从头开始,我并不是在寻找一个我会使用的答案,我正在寻找一些东西来尽可能优雅地修补我以前的无知......

【问题讨论】:

标签: javascript dynamic seo


【解决方案1】:

一个是您必须解释到达您网站的请求,如果它来自谷歌机器人,您可以返回您网站的 html 版本,如果它是普通用户,则重定向到普通网站。返回您网站的 html 版本无需花费太多精力更改代码,您就可以对您的网站进行屏幕抓取并返回呈现的 html 响应(如果它是 google bot)。你可以通过几种方式来做到这一点,要么使用带有 Nodejs 服务器的 phantomjs 之类的无头浏览器,要么使用 python beautiful soup 或 java htmlkit。

【讨论】:

  • 是的,我提到的 google-ajax-crawlable 页面确实建议使用屏幕抓取来生成 html。我会调查一下,谢谢。
【解决方案2】:

重新开始并以一种无需 JavaScript 即可运行的方式制作网站。然后(可选)使用 JavaScript 随意增强体验。

【讨论】:

  • 我不打算重新开始。这没有帮助。
【解决方案3】:

尽管有人反对并建议重新开始,但我找到了答案。我使用 php 为我的内容生成了一个精简的纯 html 版本,它的另一个好处是为禁用 javascript 的任何人提供可用的(如果不是理想的话)体验。

如果视口大小足以容纳它们,我还使用媒体查询来显示 javascript 化的 DOM 元素。由于蜘蛛很少使用 CSS,它们只能看到 php 生成的纯 html,并且有很好的内容可供搜索引擎吸收。

请参阅transmote.com 以了解此操作的示例;减小浏览器宽度 Pendule 之类的工具关闭 CSS 以查看 php 生成的纯 html 内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-23
    相关资源
    最近更新 更多