跳到主内容

Vercel 自定义域名和 SSL 对 SEO 的影响

栈溢出幸存者402 浏览
栈溢
Next.js Image 组件自动优化图片格式(WebP/AVIF)、尺寸和懒加载,对 LCP 优化效果显著。LCP 图片要加 priority 属性,否则懒加载会延迟 LCP 时间。但不要给所有图片加 priority,只给首屏最大的图片。

JSON-LD 是 Google 推荐的结构化数据格式。博客文章用 Article 类型,产品页用 Product + AggregateOffer,FAQ 用 FAQPage。用 Next.js 可以在 Server Component 中直接渲染 script 标签,不需要客户端注入。

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

SEO 友好的 URL 用 kebab-case:/forum/thread/how-to-optimize-nextjs-seo。避免下划线、驼峰、中文 URL(虽然 Google 支持但不利于分享)。Next.js 中可以用 slugify 函数生成 URL 友好的 slug。

Google E-E-A-T(经验、专业、权威、可信)是内容质量的评估框架。提升方法:作者署名 + 作者简介、引用权威来源、展示真实案例、保持内容更新频率。对 YMYL(你的金钱或生活)类站点尤为重要。
SEO部署运维
查看历史

24 回复

  1. 内卷
    内卷幸存者第 2 楼
    这个思路很巧妙,OG 图片 1200x630 是标准尺寸,用 next/og 动态生成效果最好。仅供参考,具体还是要看你的场景。
  2. 顾北
    顾北辰第 3 楼
    我的实践经验和你的不太一样:hreflang 自引用是必须的,我之前漏了导致多语言版本全没被索引。后续有新发现再来更新。
  3. 数据
    数据淘金客第 4 楼
    404 页面一定要返回 404 状态码,软 404(返回 200)会被当作低质内容。
  4. 小白
    小白第 5 楼
    不同场景下结论可能不同:metadataBase 不设置的话 OG 图片会是相对路径,社交分享显示不了。希望对你有帮助。
  5. ET
    Ethan Brooks第 6 楼
    实操中我发现:INP 替代 FID 后更严格了,用 next/dynamic 懒加载非首屏组件效果明显。实践出真知,建议动手试试。
  6. 蜕皮
    蜕皮的蛇第 7 楼
    我的结论恰恰相反:canonical 用绝对 URL,通过 buildPageUrl 确保域名一致。效果因项目而异,建议实际测试。
  7. RO
    Ronan Doyle第 8 楼
    我的结论恰恰相反:Next.js 15 的 viewport 必须单独导出,不放 metadata 里了。如有不对请指正。
  8. NO
    Noor Abdallah第 9 楼
    我的结论恰恰相反:sitemap.xml 用 ISR 缓存(revalidate: 3600),发布新内容后 revalidatePath 刷新。如有不对请指正。
  9. 吃瓜
    吃瓜群众第 10 楼
    这个问题我研究过一阵,PageSpeed 从 60 到 95 的关键:next/image + priority + 移除首屏 framer-motion。踩了很多坑才总结出来的。
  10. 老张
    老张第 11 楼
    反对一下,我的测试结果不是这样:JSON-LD 用 Article 类型必须包含 author 和 datePublished,否则 Rich Results 不显示。效果因项目而异,建议实际测试。
  11. 雾里
    雾里看花第 12 楼
    上周刚好踩了这个坑,PageSpeed 从 60 到 95 的关键:next/image + priority + 移除首屏 framer-motion。
  12. 小青
    小青年第 13 楼
    这个问题我研究过一阵,Next.js 15 的 viewport 必须单独导出,不放 metadata 里了。欢迎私信深入交流。
  13. 熬夜
    熬夜的猫头鹰第 14 楼
    补充一个边界情况:robots.txt 控制抓取,noindex 控制索引,两个不要搞混。共同进步。
  14. 互联
    互联网遗民第 15 楼
    Next.js 15 的 viewport 必须单独导出,不放 metadata 里了。
  15. 离线
    离线爱好者第 16 楼
    不同场景下结论可能不同:INP 替代 FID 后更严格了,用 next/dynamic 懒加载非首屏组件效果明显。这只是个人经验,不一定通用。
  16. BU
    Budi Santoso第 17 楼
    sitemap.xml 用 ISR 缓存(revalidate: 3600),发布新内容后 revalidatePath 刷新。
  17. 隔壁
    隔壁老王第 18 楼
    分享一下我的做法:Next.js 15 的 viewport 必须单独导出,不放 metadata 里了。
  18. 竹林
    竹林深处第 19 楼
    有个相关问题想请教:sitemap.xml 用 ISR 缓存(revalidate: 3600),发布新内容后 revalidatePath 刷新。这只是个人经验,不一定通用。
  19. 会飞
    会飞的企鹅第 20 楼
    说个反直觉的发现:robots.txt 控制抓取,noindex 控制索引,两个不要搞混。希望对你有帮助。
  20. AI
    Aisha Karim第 21 楼
    我的理解是:结构化数据用 Rich Results Test 工具测试,Search Console 会报错误。欢迎交流讨论。
登录后可回复
    数据正在加载中…