Next.js 动态路由的 generateStaticParams SEO 策略
PageSpeed 优化记录:我的站点从 60 分到 95 分花了三周。关键改动:① 图片用 next/image + priority ② 移除首屏 framer-motion 改用 CSS 动画 ③ 非首屏组件 next/dynamic 懒加载 ④ 字体用 next/font ⑤ 第三方脚本延迟...
PageSpeed 优化记录:我的站点从 60 分到 95 分花了三周。关键改动:① 图片用 next/image + priority ② 移除首屏 framer-motion 改用 CSS 动画 ③ 非首屏组件 next/dynamic 懒加载 ④ 字体用 next/font ⑤ 第三方脚本延迟...
Next.js 15 的 metadata API 比 Pages Router 的 Head 组件强大太多。用 generateMetadata 可以根据路由参数动态生成 title、description、OG 标签。关键是 metadataBase 要正确设置,否则 OG 图片的 URL 会是...
Google 抓取预算对大站很重要。优化方法:① robots.txt 禁止低价值页面 ② 用 noindex 阻止索引但不阻止抓取 ③ 优化内链结构让重要页面更易到达 ④ 删除或合并薄内容页面 ⑤ 监控 Search Console 的抓取统计。 hreflang 是多语言站点最容易被忽略的 S...
SEO 分页 URL 用 /page/2 路径形式比 ?page=2 查询参数更好。路径形式更利于 Google 理解和索引,查询参数可能被当作重复内容。但分页页面的 canonical 要指向自身而非第一页,否则第二页之后的内容不会被索引。 metadataBase 是 Next.js 15 m...
Next.js 15 将 viewport 从 metadata 中分离,必须单独导出 viewport 对象。缺少 viewport 会导致移动端渲染异常,影响移动端优先索引。viewport 中可以设置 width、initialScale、themeColor 等。 OG 图片用 Next....
robots.txt 不是阻止索引的手段,而是控制抓取。要阻止索引用 noindex meta 标签或 X-Robots-Tag header。常见的 robots.txt 配置:允许所有页面、禁止 /admin、禁止 /api、指向 sitemap.xml。 404 页面的 SEO 处理:返回...
OG 图片用 Next.js 的 next/og 或 ImageResponse 动态生成,效果比静态图片好。1200x630 是标准尺寸,图片上放标题和品牌 logo,社交分享时点击率能提升 30%。 Next.js ISR 对 SEO 友好,因为输出的是完整 HTML。但要注意:ISR 缓存的...
Next.js 动态路由用 generateStaticParams 预生成静态页面,对 SEO 友好。但如果是用户生成内容(如论坛帖子),无法预生成,需要用 ISR 或 SSR。论坛帖子页面建议 ISR(revalidate: 3600)+ 发帖后 revalidatePath。 Google...
metadataBase 是 Next.js 15 metadata 的基础 URL 设置。所有相对路径的 OG 图片、canonical URL 都会基于 metadataBase 生成绝对 URL。如果没设置,OG 图片可能显示为相对路径,社交平台无法正确显示。 Next.js Image 组...
meta keywords 已经被 Google 完全忽略,不要在 metadata 中配置 keywords 字段。它不仅没有 SEO 价值,还会暴露关键词策略给竞争对手。Bing 也已忽略 meta keywords。 hreflang 是多语言站点最容易被忽略的 SEO 配置。每个语言页面必...
Schema.org 类型选择:博客文章用 Article(必须有 author/datePublished),产品页用 Product + AggregateOffer(不要用 Offer + price:0),FAQ 用 FAQPage(必须有 Question/Answer 数组)。选错类型会...
robots.txt 不是阻止索引的手段,而是控制抓取。要阻止索引用 noindex meta 标签或 X-Robots-Tag header。常见的 robots.txt 配置:允许所有页面、禁止 /admin、禁止 /api、指向 sitemap.xml。 Schema.org 类型选择:博客...
Next.js ISR 对 SEO 友好,因为输出的是完整 HTML。但要注意:ISR 缓存的页面不能包含用户个性化数据(如 session),否则不同用户看到相同缓存会有安全问题。SSR 输出必须对所有用户相同。 Core Web Vitals INP 优化关键是减少主线程阻塞。① 拆分长任务(...
Core Web Vitals INP 优化关键是减少主线程阻塞。① 拆分长任务(>50ms)用 requestIdleCallback 或 setTimeout ② 减少第三方脚本 ③ 用 Web Worker 处理重计算 ④ 延迟加载非关键交互 ⑤ 避免大型布局重排。 Vercel 部署的 N...
OG 图片用 Next.js 的 next/og 或 ImageResponse 动态生成,效果比静态图片好。1200x630 是标准尺寸,图片上放标题和品牌 logo,社交分享时点击率能提升 30%。 Next.js Image 组件自动优化图片格式(WebP/AVIF)、尺寸和懒加载,对 LC...
robots.txt 不是阻止索引的手段,而是控制抓取。要阻止索引用 noindex meta 标签或 X-Robots-Tag header。常见的 robots.txt 配置:允许所有页面、禁止 /admin、禁止 /api、指向 sitemap.xml。 软 404 是指返回 200 状态码...
Google Search Console 的 URL 检查工具可以查看单个 URL 的索引状态、抓取情况、结构化数据错误、移动端可用性。新页面发布后用这个工具请求索引,比等 Google 自然发现快很多。 meta keywords 已经被 Google 完全忽略,不要在 metadata 中配...
Google Search Console 验证站点后,第一件事是提交 sitemap.xml。新页面发布后可以用 URL 检查工具主动请求索引,加速收录。但不要频繁提交相同 URL,Google 会降低优先级。 Next.js 15 将 viewport 从 metadata 中分离,必须单独导...
Next.js 动态路由用 generateStaticParams 预生成静态页面,对 SEO 友好。但如果是用户生成内容(如论坛帖子),无法预生成,需要用 ISR 或 SSR。论坛帖子页面建议 ISR(revalidate: 3600)+ 发帖后 revalidatePath。 SEO 友好的...
hreflang 自引用是必须的。每个语言页面必须包含指向自身的 hreflang(如 hreflang=en 指向英文版)。缺少自引用,Google 会忽略整组 hreflang。x-default 指向默认语言版本,用于未匹配语言的用户。 metadataBase 是 Next.js 15 m...