没有不值得去解决的问题,也没有不值得去学习的技术!

标签: SPA SEO

  • A Tour of Go 的 SPA SEO 问题早已存在:对用户来说,103 个课程 URL 明明对应不同内容,但 Google Search Console 曾将多个页面判断为“重复网页,用户未选定规范网页”。这一次在继续优化 AdSense 的过程中,我最终决定为全部 103 个正式课程页生成独立 Prerender HTML,让服务器首次响应就直接包含本页标题、正文、Go 示例源码、canonical 和 description,同时继续保留 Angular SPA、CodeMirror 与 Playground。本文记录了为什么 SEO 与广告上下文理解共同推动了这次 Prerender 实现,以及如何让每个课程 URL 真正拥有独立页面身份。

👨‍💻 个人品牌

王世强|技术实践者 · 独立博客作者

15+ 年 Web 与系统实践经验,持续关注网站基础设施、系统优化、AI 工具与自动化。

持续运营技术博客 10+ 年,累计发布 1000+ 篇原创技术文章。

长期建设个人项目,也欢迎合适的技术交流、咨询与合作。

👉 关于我

.env (14) add (16) AI 翻译 (34) Apache (13) Array (19) A Tour of Go (77) Cache (13) CentOS (23) ChatGPT (29) ChatGPT Plus (17) chrome (19) Cloudflare (38) Codex (27) composer (42) composer.json (22) composer update (14) console (16) Container (25) curl (16) delete (31) Docker (32) Dockerfile (15) EdgeOne (34) environment variable (19) error (24) file (15) filter (20) Git (28) GitHub (23) Gitlab (15) GLM-5.2 (27) Go (67) go-tour-i18n (16) Google AdSense (30) Go 语言 (24) GraphQL (24) GraphQL API (14) Gutenberg (36) http (21) https (22) Interface (19) Jquery (13) json (24) Laravel (37) Laravel 6 (55) Laravel 9 (25) Lighthouse (17) Lighthouse 5 (14) Linux (22) Migrate (13) Module (17) MySQL (78) MySQL 5.7 (22) Nginx (63) normalize.css (28) OKX (15) OneinStack (21) PHP (67) php-fpm (19) php.ini (24) PHP 7.1.12 (22) PHP 7.4 (26) phpmyadmin (15) PhpStorm (24) Polylang (58) postman (18) Query (17) queue (16) Rancher (24) Redis (51) RESTful (27) RESTful API (23) Shopify (19) SlyTranslate (21) SQL (24) String (14) TortoiseGit (14) Twenty Twenty-Five (20) Ubuntu (43) update (20) VPN (17) W3 Total Cache (40) Windows 10 (46) WireGuard (28) WordPress (135) WPCode (23) Wstunnel (15) Yii (40) Yii 2 (70) Yii 2.0 (51) 国际化 (16) 多语言 (14) 多语言翻译 (38) 开源项目 (16) 技术博客 (15) 故障排查 (19) 数据库迁移 (16) 浏览器 (14) 阿里云 (20) 页面缓存 (14)

2026 年 10 月
一 二 三 四 五 六 日
 1234
567891011
12131415161718
19202122232425
262728293031