技术栈行动指南 · 快照日期:2026年10月23日
Next.js on Vercel:就绪度行动指南
采用此技术栈的 2,044 个受测网站在哪些方面做得好、哪些方面存在不足,以及弥补各项差距的 Next.js on Vercel 专属操作步骤。
- 已测评网站
- 2,044
- 就绪度指数中位数
- 73/100
- 采用此技术栈的网站档案
- 149
根据首页 HTML 和响应头检测
全部网站:64
排名前 50K 的网站
各维度就绪度
启用
85/100
全部网站 77
加固
69/100
全部网站 55
加速
72/100
全部网站 63
恢复
5/100
全部网站 11
Next.js on Vercel 操作指南
按影响程度排列的差距;如有平台专属操作步骤,一并列出。
head 元素中没有阻塞渲染的脚本
已观察到 23% · 全部网站 44%
为需要 DOM 的脚本添加 defer,为分析统计等独立脚本添加 async,或将它们移至 body 末尾。
在 Next.js 上:使用 next/script 组件,并选择合适的加载策略。
已发布 security.txt
已观察到 9.4% · 全部网站 5.5%
按照 RFC 9116 的要求,发布至少包含 Contact 和 Expires 字段的 /.well-known/security.txt,并在其到期前进行审查。
已声明支持 HTTP/3
已观察到 14% · 全部网站 36%
在您的 CDN 上启用 HTTP/3。浏览器会自动回退到 HTTP/2,因此风险较低。
已使用现代图片格式
已观察到 43% · 全部网站 40%
提供 WebP 或 AVIF 图片,并以 JPEG 或 PNG 作为后备格式;可通过图片 CDN 实现,也可在构建时生成两种格式。
在 Next.js 上:next/image 组件会自动提供经过优化的格式。
在 Vercel 上:Vercel 图像优化提供现代格式。
DMARC 策略强制执行隔离或拒收
已观察到 47% · 全部网站 31%
先发布包含 p=none 和报告接收地址的 DMARC,修正所有未通过 SPF 或 DKIM 对齐验证的合法发件方,然后改为隔离,最后改为拒收。
已通过 DNSSEC 签名
已观察到 10% · 全部网站 8.1%
在您的 DNS 提供商处启用 DNSSEC,然后在注册商处添加 DS 记录。请仔细规划提供商迁移:过时的 DS 记录可能导致域名无法解析。
已设置内容安全策略
已观察到 34% · 全部网站 31%
先使用 Content-Security-Policy-Report-Only 查看哪些功能会受影响,在几周内逐步收紧策略,然后强制执行。
在 Next.js 上:Next.js 的文档介绍了如何通过中间件实现基于 nonce 的 CSP。
已限制框架嵌入
已观察到 46% · 全部网站 49%
发送 Content-Security-Policy: frame-ancestors 'self'(或指定可信来源列表)。X-Frame-Options: SAMEORIGIN 可兼顾旧版浏览器。
在 Next.js 上:在 next.config.js 的 headers() 中添加该项。
Next.js on Vercel 网站的领先之处
- HSTS 至少保留一年已观察到 97%全部网站 31%
- 静态文件缓存时长不少于 30 天观测值 98%所有网站 50%
- CAA 记录限定可签发证书的机构观测值 49%所有网站 11%
- 屏幕外图像已采用懒加载观测值 95%所有网站 61%
Next.js on Vercel 上的全部 31 项检查
| 检查项 | 通道 | 已观察到 | 全部网站 | 已测量 |
|---|---|---|---|---|
| HTTP 请求重定向至 HTTPS | 加固 | >99% | 91% | 1,945 |
| HSTS 保留至少一年 | 加固 | 97% | 31% | 2,044 |
| 已协商使用 TLS 1.3 | 加固 | >99% | 92% | 2,024 |
| 证书剩余有效期超过 14 天 | 加固 | >99% | >99% | 2,024 |
| 证书有效期不超过 100 天 | 加固 | 93% | 75% | 2,024 |
| CAA 记录限制可签发证书的机构 | 加固 | 49% | 11% | 2,044 |
| 已通过 DNSSEC 签名 | 加固 | 10% | 8.1% | 2,044 |
| 已发布 security.txt | 加固 | 9.4% | 5.5% | 1,965 |
| DMARC 策略强制执行隔离或拒收 | 加固 | 47% | 31% | 2,044 |
| X-Content-Type-Options: nosniff | 加固 | 40% | 48% | 2,044 |
| 已限制框架嵌入 | 加固 | 46% | 49% | 2,044 |
| 已设置内容安全策略 | 加固 | 34% | 31% | 2,044 |
| 已设置 Referrer-Policy | 加固 | 33% | 23% | 2,044 |
| 已协商使用 HTTP/2 | 加速 | >99% | 89% | 2,024 |
| 已声明支持 HTTP/3 | 加速 | 14% | 36% | 2,044 |
| HTML 已压缩 | 加速 | >99% | 93% | 2,044 |
| 静态文件缓存时间至少为 30 天 | 加速 | 98% | 50% | 1,972 |
| 已使用现代图片格式 | 加速 | 43% | 40% | 1,752 |
| 屏幕外图片采用延迟加载 | 加速 | 95% | 61% | 1,641 |
| head 元素中没有阻塞渲染的脚本 | 加速 | 23% | 44% | 2,044 |
| 已发布 robots.txt | 启用 | 91% | 79% | 1,983 |
| XML 站点地图可被发现 | 启用 | 87% | 73% | 2,037 |
| 可通过 IPv6 访问 | 启用 | 23% | 44% | 2,044 |
| 已声明规范 URL | 启用 | 77% | 70% | 2,044 |
| 已编写元描述 | 启用 | 96% | 82% | 2,044 |
| 已配置移动端视口 | 启用 | 100% | 96% | 2,044 |
| 已提供结构化数据 | 启用 | 60% | 53% | 2,044 |
| 已设置社交分享预览图片 | 启用 | 73% | 55% | 2,044 |
| 已声明页面语言 | 启用 | 98% | 91% | 2,044 |
| 到达首页最多经过一次重定向 | 启用 | 98% | 98% | 2,044 |
| 域名服务器分布于不同提供商 | 恢复 | 5.2% | 11% | 2,042 |