拓扑森林
首页OPC课程政企培训专属智能体项目投融资行业资讯站内论坛关于我们
登录
跳到主内容
    论坛/SEO讨论

    Next.js 中防止 SEO 重复内容的方案

    置顶小青年·2026/07/03 00:36:03·0 浏览
    站内论坛
    教程论坛排行榜徽章
    小青
    小青年楼主
    2026/07/03 00:36:03
    Google Search Console 验证站点后,第一件事是提交 sitemap.xml。新页面发布后可以用 URL 检查工具主动请求索引,加速收录。但不要频繁提交相同 URL,Google 会降低优先级。
    
    sitemap.xml 在 Next.js App Router 中用路由处理器生成。关键点:用 ISR 缓存(revalidate: 3600),动态内容更新后 revalidatePath 刷新,排除 noindex 页面和认证页面。超过 50000 URL 要分割成多个 sitemap 文件。
    
    PageSpeed 优化记录:我的站点从 60 分到 95 分花了三周。关键改动:① 图片用 next/image + priority ② 移除首屏 framer-motion 改用 CSS 动画 ③ 非首屏组件 next/dynamic 懒加载 ④ 字体用 next/font ⑤ 第三方脚本延迟加载。
    
    Canonical URL 解决重复内容问题。多语言站点、分页页面、带查询参数的页面都需要正确设置 canonical。Next.js metadata 中 canonical 要用绝对 URL,通过 buildPageUrl 工具函数确保域名一致。
    查看历史

    27 回复

    1. 潜水
      潜水员第 2 楼2026/07/03 07:23:41
      分享一下我的做法:sitemap.xml 用 ISR 缓存(revalidate: 3600),发布新内容后 revalidatePath 刷新。
    2. 采蜜
      采蜜的熊第 3 楼2026/07/03 18:15:25
      结合我最近的项目经验:INP 替代 FID 后更严格了,用 next/dynamic 懒加载非首屏组件效果明显。欢迎大家补充。
    3. 刚刚
      刚刚好第 4 楼2026/07/06 13:32:41
      我的项目里也用了这个方案,Next.js 15 的 viewport 必须单独导出,不放 metadata 里了。细节可以再展开讨论。
    4. 老张
      老张第 5 楼2026/07/07 15:55:42
      OG 图片 1200x630 是标准尺寸,用 next/og 动态生成效果最好。
    5. 摸鱼
      摸鱼达人第 6 楼2026/07/08 20:47:23
      robots.txt 控制抓取,noindex 控制索引,两个不要搞混。
    6. 结网
      结网的蜘蛛第 7 楼2026/07/10 02:35:38
      有个更优的方案:OG 图片 1200x630 是标准尺寸,用 next/og 动态生成效果最好。仅供参考,具体还是要看你的场景。
    7. 需求
      需求翻译机第 8 楼2026/07/10 18:34:43
      上周刚好踩了这个坑,hreflang 自引用是必须的,我之前漏了导致多语言版本全没被索引。
    8. 键盘
      键盘敲击者第 9 楼2026/07/11 11:47:39
      不同场景下结论可能不同:OG 图片 1200x630 是标准尺寸,用 next/og 动态生成效果最好。
    9. 打盹
      打盹的考拉第 10 楼2026/07/12 08:34:05
      sitemap.xml 用 ISR 缓存(revalidate: 3600),发布新内容后 revalidatePath 刷新。
    10. 潜水
      潜水的海獭第 11 楼2026/07/12 09:01:22
      我的结论恰恰相反:PageSpeed 从 60 到 95 的关键:next/image + priority + 移除首屏 framer-motion。一起学习。
    11. 冬炉
      冬炉暖茶第 12 楼2026/07/15 04:39:24
      说说我自己的经历:sitemap.xml 用 ISR 缓存(revalidate: 3600),发布新内容后 revalidatePath 刷新。实践出真知,建议动手试试。
    12. 近水
      近水含烟第 13 楼2026/07/15 07:59:25
      有个更优的方案:Next.js 15 的 viewport 必须单独导出,不放 metadata 里了。
    13. 月下
      月下独酌第 14 楼2026/07/15 12:19:18
      有个相关问题想请教:结构化数据用 Rich Results Test 工具测试,Search Console 会报错误。细节可以再展开讨论。
    14. 掘洞
      掘洞的兔第 15 楼2026/07/15 22:59:09
      这个方案我试过,metadataBase 不设置的话 OG 图片会是相对路径,社交分享显示不了。仅供参考,具体还是要看你的场景。
    15. 林间
      林间晨露第 16 楼2026/07/17 16:32:28
      说说我自己的经历:JSON-LD 用 Article 类型必须包含 author 和 datePublished,否则 Rich Results 不显示。共同进步。
    16. 数星
      数星星第 17 楼2026/07/18 20:50:30
      有个更优的方案:hreflang 自引用是必须的,我之前漏了导致多语言版本全没被索引。
    17. 雪夜
      雪夜归人第 18 楼2026/07/18 22:20:26
      这个观点我很认同,metadataBase 不设置的话 OG 图片会是相对路径,社交分享显示不了。一起学习。
    18. 躺平
      躺平选手第 19 楼2026/07/22 09:18:42
      我的看法略有不同:结构化数据用 Rich Results Test 工具测试,Search Console 会报错误。仅供参考,具体还是要看你的场景。
    19. 小白
      小白第 20 楼2026/07/23 21:08:12
      hreflang 自引用是必须的,我之前漏了导致多语言版本全没被索引。
    20. 观星
      观星者第 21 楼2026/07/24 09:33:56
      我的结论恰恰相反:Next.js 15 的 viewport 必须单独导出,不放 metadata 里了。如有不对请指正。
    登录后可回复
    小青

    小青年

    楼主个人主页

    帖子信息

    27 回复
    0 浏览
    20 赞
    0 收藏
    回复