帮助您的 SPA 被发现

发布: (2026年2月10日 GMT+8 08:04)
6 分钟阅读
原文: Dev.to

Source: Dev.to

我构建了一个让我自豪的东西。却没有人能找到它。

构建产品是最容易的部分。

我花了几个月时间打造一个开发者工具——一个真正能解决实际问题的产品。我把它上线了。它运行良好。我真的为此感到骄傲。

然后我在 Google 上搜索了自己的网站。

首页出现了——但几乎不可见。其他页面呢?全都看不见。我的文档页、模板页、定价页——Google 根本不知道它们的存在。当我在 LinkedIn 和 Twitter 上分享链接时,每个页面显示的都是同一个通用预览卡。Slack、Discord——也是同样的情况。

我们都听过“建好它,它们就会来”。即使你心里明白这并不是运作方式,仍然有一部分你会期待它。你打造了很棒的东西,部署它,然后等着人们偶然发现你的天才。但他们并不会。

让人们看到你的作品是没有人提醒你的最难问题。对我来说,根本原因竟然是如此尴尬地简单。

每个 SPA 开发者都会遇到的问题

  • 你的应用只发布一个 index.html。一个 <script> 标签。一个 <script> 标签。
  • 你站点上的每个路由(/docs/pricing/about 等)向搜索引擎和社交平台提供完全相同的元数据。
  • 你有 10 个页面。Google 只看到一个。LinkedIn 只看到一个。Twitter 只看到一个。Slack 只看到一个。
  • 不运行 JavaScript 的爬虫只能看到一个空的 <div>

我打开 Google Search Console,看到 25 个页面资源中有 21 个根本无法加载——来自外部 CDN 的字体,Google 的爬虫无法访问。我的站点基本上对帮助人们发现内容的系统来说是不可见的。

我为了解决它所构建的内容

我编写了一个 Cloudflare Worker,像反向代理一样位于你的 SPA 前端。你的应用保持不变,托管方式也不变。Worker 只拦截请求并修复搜索引擎和社交平台看到的内容。

它的功能

  • 每个页面都有自己的标题、描述、Open Graph 标签、Twitter 卡片和规范 URL。将你的 /pricing 页面分享到 Slack 时,预览实际显示 “Pricing” —— 而不是首页标题。
  • 当搜索引擎爬虫或社交预览机器人访问(Googlebot、Bingbot、LinkedIn、Twitter、Slack、Discord、AI 机器人——覆盖 35+)时,它们会收到完整渲染的 HTML,包含真实内容,而不是空的 <div>
  • 普通访客仍然得到与你之前完全相同的 SPA。对你的应用零改动,对性能零影响。

它不做的事

  • 不需要你更改框架。
  • 不需要 SSR 或构建插件。
  • 不会触碰你现有的代码。
  • 不在乎你的应用托管在哪里——Netlify、Vercel、Cloudflare Pages、S3,或任何地方。

它只是一份文件,几分钟即可部署。并且可以在任何托管平台上为任何 SPA 工作。

您将获得

  • 在 Google 中有 11 页中的 10 页被收录。
  • 从结构化数据检测到 FAQ 丰富结果。
  • 每个页面在 LinkedIn、Twitter、Slack 和 Discord 上都有自己的社交预览。
  • 外部资源失败从 25 次中的 21 次降至几乎为零。
  • 所有页面已提交并在 Bing 上爬取。

整个过程大约增加 5 毫秒 的延迟。对于不需要 SEO 的路由(例如您的仪表板),worker 直接代理转发,零开销。

您可以通过 AI 提示进行设置

我已将整个设置打包成一个 AI 提示。将其粘贴到 Claude Code、Cursor、Windsurf 或您使用的任何 AI 编辑器中。它会询问您几个问题——您的域名、路由、每个页面的标题和描述——然后构建所有内容:

  • Worker。
  • 预渲染脚本。
  • 网站地图。
  • robots.txt
  • 结构化数据。
  • 部署和 Search Console 提交步骤。

无需了解 HTMLRewriterPlaywrightJSON‑LD。提示会处理技术细节;您只需回答有关应用的问题。

以下是 AI 提示:

(为简洁起见省略提示)

为什么我要分享这个

因为我知道还有其他开发者已经做了很好的东西,却不知道为什么没有人发现它。单页应用(SPA)的 SEO 问题并不明显,除非你去检查——而到那时,你已经失去了数月的潜在流量。

如果你构建了单页应用,请立即查看 Google Search Console。看看有多少页面实际上被索引了。看看你的社交预览是什么样的。你可能会感到惊讶。

然后修复它。只需要几分钟,而不是几天。

0 浏览
Back to Blog

相关文章

阅读更多 »

📦Redux 是什么?

如果你正在学习前端开发,尤其是使用 React,你可能听说过 Redux。它起初可能会让人感到困惑,但核心思想很简单……