跳到主内容

Next.js 15 generateMetadata 完整指南:从基础到高级

老张426 浏览
老张
老张楼主
Next.js ISR 对 SEO 友好,因为输出的是完整 HTML。但要注意:ISR 缓存的页面不能包含用户个性化数据(如 session),否则不同用户看到相同缓存会有安全问题。SSR 输出必须对所有用户相同。

meta keywords 已经被 Google 完全忽略,不要在 metadata 中配置 keywords 字段。它不仅没有 SEO 价值,还会暴露关键词策略给竞争对手。Bing 也已忽略 meta keywords。

robots.txt 不是阻止索引的手段,而是控制抓取。要阻止索引用 noindex meta 标签或 X-Robots-Tag header。常见的 robots.txt 配置:允许所有页面、禁止 /admin、禁止 /api、指向 sitemap.xml。

Google 抓取预算对大站很重要。优化方法:① robots.txt 禁止低价值页面 ② 用 noindex 阻止索引但不阻止抓取 ③ 优化内链结构让重要页面更易到达 ④ 删除或合并薄内容页面 ⑤ 监控 Search Console 的抓取统计。
Next.js
查看历史

13 回复

  1. 潜水
    潜水员第 2 楼
    结合我最近的项目经验:hreflang 自引用是必须的,我之前漏了导致多语言版本全没被索引。后续有新发现再来更新。
  2. 搬家
    搬家的蚂蚁第 3 楼
    我的结论恰恰相反:metadataBase 不设置的话 OG 图片会是相对路径,社交分享显示不了。共同进步。
  3. 刚刚
    刚刚好第 4 楼
    上周刚好踩了这个坑,PageSpeed 从 60 到 95 的关键:next/image + priority + 移除首屏 framer-motion。后续有新发现再来更新。
  4. YU
    Yusuf Al-Amin第 5 楼
    我做了类似的对比实验:robots.txt 控制抓取,noindex 控制索引,两个不要搞混。这只是个人经验,不一定通用。
  5. TA
    Tan Wei Ming第 6 楼
    说说我自己的经历:结构化数据用 Rich Results Test 工具测试,Search Console 会报错误。这只是个人经验,不一定通用。
  6. 不将
    不将就第 7 楼
    这个问题我研究过一阵,hreflang 自引用是必须的,我之前漏了导致多语言版本全没被索引。欢迎交流讨论。
  7. 小青
    小青年第 8 楼
    上周刚好踩了这个坑,JSON-LD 用 Article 类型必须包含 author 和 datePublished,否则 Rich Results 不显示。欢迎私信深入交流。
  8. 熬夜
    熬夜的猫头鹰第 9 楼
    说个反直觉的发现:OG 图片 1200x630 是标准尺寸,用 next/og 动态生成效果最好。共同进步。
  9. 观星
    观星者第 10 楼
    补充一个边界情况:sitemap.xml 用 ISR 缓存(revalidate: 3600),发布新内容后 revalidatePath 刷新。
  10. 会议
    会议逃生专家第 11 楼
    补充一个边界情况:metadataBase 不设置的话 OG 图片会是相对路径,社交分享显示不了。踩了很多坑才总结出来的。
  11. JA
    Jack Harrington第 12 楼
    robots.txt 控制抓取,noindex 控制索引,两个不要搞混。
  12. 摸鱼
    摸鱼的锦鲤第 13 楼
    这个思路很巧妙,OG 图片 1200x630 是标准尺寸,用 next/og 动态生成效果最好。如果有更好的方案求分享。
  13. SO
    Sophie Lambert第 14 楼
    有个更优的方案:hreflang 自引用是必须的,我之前漏了导致多语言版本全没被索引。一起学习。
登录后可回复
    数据正在加载中…