SEO 学校级别 3:高级精通课程 2
级别 3:高级精通
课程 2/10
15 分钟阅读
2026-01-04

JavaScript SEO:确保您的应用被索引

现代 Web 开发依赖于 JavaScript,但这可能会损害您的 SEO。了解 CSR、SSR 和 SSG 之间的区别,以及如何确保 Google 索引您的 React、Vue 或 Angular 应用。

现代 Web 开发已严重转向像 React、Vue 和 Angular 这样的 JavaScript 框架。虽然这些框架创造了奇妙的、类似应用程序的用户体验,但如果配置不当,它们可能会给搜索引擎带来重大障碍。

核心问题是渲染 (Rendering)。Googlebot 很聪明,但它不是人类用户。如果您的内容完全依赖于浏览器中的 JavaScript 执行,您就有可能隐形。

1. 问题:客户端渲染 (CSR)

默认情况下,大多数单页应用 (SPA) 使用客户端渲染。

它是如何工作的:

服务器发送一个几乎为空的 HTML 文件(通常只是一个 <div id="root">)。然后浏览器下载一个大型 JavaScript 包,执行它,并用内容填充页面。

Google 看到什么:

当 Googlebot 首次抓取 URL 时,它看到的是空的 HTML 外壳。

风险:

Google 可以执行 JavaScript,但这需要大量的处理能力。因此,Google 推迟了这个过程。

  • 第一波 (抓取): Google 看到空的外壳。
  • 队列: 页面在“渲染队列”中停留数小时或数天。
  • 第二波 (渲染): Google 最终执行 JS 以查看内容。

底线: 如果渲染超时,纯 CSR 可能导致索引延迟和内容丢失。

2. 解决方案:服务端渲染 (SSR) 和 SSG

为了确保 Google 立即看到您的内容,您必须将渲染过程从用户的浏览器移动到服务器(或构建时)。

A. 服务端渲染 (SSR)

它是如何工作的: 当机器人(或用户)请求页面时,服务器执行 JavaScript,构建完整的 HTML 字符串,并将填充完整的页面发送给浏览器。

  • 好处: Googlebot 在初始 HTML 响应中看到完整的内容(文本、链接、元数据)。索引是即时的。
  • 框架:
    • React:使用 Next.js 或 Remix。
    • Vue:使用 Nuxt.js。
    • Angular:使用 Angular Universal。

B. 静态站点生成 (SSG)

它是如何工作的: 您在构建时(部署前)生成所有 HTML 页面。服务器提供简单的静态 HTML 文件。

  • 好处: 极快的性能(非常适合核心 Web 指标)和完美的 SEO。
  • 用例: 博客、营销网站和 pSEO 项目(如您的“pSEO Wizard”)。
  • 框架: Next.js、Gatsby、Astro。

比较:CSR vs. SSR vs. SSG

特性CSR (客户端)SSR (服务端)SSG (静态)
初始 HTML空 (加载中...)完整内容完整内容
SEO 友好性低 / 有风险
服务器负载
最适合仪表板、私有应用动态 Feed、社交网络博客、文档、着陆页

3. JS SEO 的关键最佳实践

即使使用 SSR,开发人员也经常犯损害索引的错误。

A. 使用真实链接 (<a href>)

Googlebot 通过跟踪链接发现新页面。

  • 坏: <div onClick={goToPage}>产品</div> (Googlebot 不会点击)。
  • 好: <a href="/product">产品</a> (Googlebot 会跟踪此链接)。

注意:在像 Next.js 这样的框架中,使用渲染底层 <a> 标签的 <Link> 组件。

B. 管理元数据 (<head>)

在单页应用中,<title><meta> 标签通常在每个页面上保持静态(例如,“我的应用”)。

修复: 您必须为每个路由注入动态元数据。

  • React: 使用 react-helmet 或 Next.js Metadata API。
  • Vue: 使用 vue-meta。

验证:在页面之间导航时,检查浏览器选项卡中的标题是否更改。

C. 不要阻止资源

确保您的 robots.txt 文件不阻止您的 JavaScript (.js) 或 CSS (.css) 文件。Google 需要访问这些文件才能正确渲染页面。

4. 如何测试您的 JS 应用

永远不要猜测;始终验证 Google 看到的内容。

  • Google Search Console (URL 检查): 输入您的 URL 并单击“Test Live URL”。单击“View Tested Page” > “Screenshot”。结果:如果屏幕截图为空或显示加载微调器,则 Google 无法看到您的内容。如果您看到文本,那就是安全的。
  • 富媒体搜索结果测试 (Rich Results Test): 此工具运行实际的 Google 渲染引擎。如果它可以检测到您的架构标记,这通常意味着它已成功渲染页面。
  • 在 Chrome 中禁用 JavaScript: 使用浏览器扩展程序关闭 JS。重新加载您的页面。如果屏幕为空,则您完全依赖于 CSR。

结论

对于现代 SEO,服务端渲染 (SSR) 或静态站点生成 (SSG) 是标准。虽然 Google 可以索引客户端渲染的应用,但依赖它就像拿您的排名玩俄罗斯轮盘赌。通过使用像 Next.js 或 Nuxt 这样的框架,您可以给搜索引擎正是它们想要的东西:快速、可访问且完全渲染的 HTML。

准备好应用所学知识了吗?

使用 pSEO Wizard 将您的知识付诸实践,生成数千个 SEO 优化页面。

立即开始构建