Next.js SEO 总览与实践路径
SEO 本质是让 搜索引擎能稳定获取结构清晰的页面内容,并理解页面主题。在 Next.js 项目中,SEO 可以拆成几块来逐步完成。
一、站点基础配置
主要目的是:搜索引擎如何理解你的网站,让搜索引擎能“进入你的网站,并知道有哪些页面”。
主要包括:
-
Metadata 基础配置
- metadataBase
- title / description
- openGraph / twitter
- canonical
- icons
-
robots.txt
- Allow / Disallow
- 声明 sitemap
-
sitemap.xml
- 包含课程页、课时页
- lastModified / 更新频率
二、内容页面优化
每个页面都应该是“可被单独索引”的
主要针对课程页、课时页:
- 使用
generateMetadata覆盖 Metadata - 动态生成 title / description
- 设置 canonical
- 配置 Open Graph(或生成 OG Image)
三、内容可抓取性
- 使用
generateStaticParams生成页面 - 优先 SSG / ISR
- 避免不必要的动态渲染
- 页面正文必须是 服务端直接输出的 HTML
四、结构化数据
让搜索引擎更准确理解页面类型:
- Organization(站点信息)
- BreadcrumbList(面包屑)
- Article / TechArticle / Course
五、站内结构
SEO 不只是页面本身,还包括页面之间的关系,体现页面之间“可遍历的结构”:
- 课程 → 课时 的层级结构
- 上一节 / 下一节导航
- 相关推荐内容
- 面包屑导航
六、上线后的验证与提交
上线后需要确认搜索引擎能正常解析:
- 提交到 Google Search Console
- 使用 Rich Results Test 检查结构化数据
- 使用 URL Inspection 查看收录情况
一个简单的理解方式
可以把整个 SEO 拆成三件事:
- 能不能被访问(robots / sitemap)
- 页面是不是独立可读(metadata + 内容)
- 结构是否清晰(链接 + 数据结构)
后面的课程会配合 raytonx-learn 项目的SEO改造,逐步展开实现细节。