Vercel 默认分配的Documentation Index
Fetch the complete documentation index at: https://www.pid0.cn/llms.txt
Use this file to discover all available pages before exploring further.
vercel.app 域名在中国大陆经常无法访问,原因是该域名遭到 DNS 污染,且 Vercel 的边缘节点不在大陆。解决方法是绑定自定义域名并走 Cloudflare 代理,绕过 DNS 污染问题。
前提
- 已有一个域名(Namesilo / Cloudflare Registrar / 阿里云均可)
- 已将域名 DNS 迁移到 Cloudflare(Cloudflare 配置指南)
- Vercel 账号已部署了项目
第一步:在 Vercel 绑定自定义域名
进入项目 → Settings → Domains → 添加你的域名(如app.yourdomain.com)。
Vercel 会显示 DNS 配置要求,通常是一条 CNAME 记录:
第二步:Cloudflare CNAME 配置
标准方案
在 Cloudflare DNS 面板添加记录:| 类型 | 名称 | 内容 | 代理状态 |
|---|---|---|---|
| CNAME | app | cname.vercel-dns.com | 仅 DNS(灰云) |
优化方案(enhanced-FaaS-in-China)
标准方案对国内访问速度的提升有限。enhanced-FaaS-in-China 提供了优选过的 CNAME 节点,在中国大陆访问更稳定。 将 CNAME 记录的内容改为优选节点:| 类型 | 名称 | 内容 | 代理状态 |
|---|---|---|---|
| CNAME | app | vercel-cname.xingpingcn.top | 仅 DNS(灰云) |
第三步:SSL/TLS 模式设置
Cloudflare 和 Vercel 之间需要 SSL 配置匹配,否则会出现证书错误。 在 Cloudflare 面板:SSL/TLS → 概述 → 选择 完全(Full) 模式。 不要选”灵活(Flexible)“——灵活模式下 Cloudflare 到 Vercel 是明文传输,Vercel 会返回 SSL 错误。常见报错
526 无效 SSL 证书
Cloudflare 无法验证源服务器(Vercel)的证书。原因通常是 SSL/TLS 模式设为了”灵活”,改为”完全”即可。CNAME 扁平化冲突(根域名无法使用 CNAME)
如果你想用根域名(yourdomain.com 而非 app.yourdomain.com)指向 Vercel,DNS 协议不允许根域名设置 CNAME。
解决方法:在 Cloudflare 添加 A 记录,指向 Vercel 的 IP,或在 Vercel 的 Domains 里选择使用 www 子域并配置根域名重定向。
实际上 Cloudflare 对根域名有 CNAME Flattening 功能,可以把根域名的 CNAME 在查询时自动解析为 A 记录,Vercel 验证页面会提示 Vercel 专用的配置方式。
Vercel 域名验证一直未通过
Cloudflare 的代理(橙云)会隐藏真实 DNS,导致 Vercel 看不到预期的 CNAME。验证期间保持灰云状态,验证通过后再切换。效果预期
配置完成后,国内访问你的应用走的路径是:vercel.app 相比,DNS 解析稳定,访问成功率显著提升。由于 Vercel 最近的大陆外节点在亚太区,延迟通常在 80~150ms,无法做到大陆节点那样的 10ms 级别,但足够支撑正常使用。
如果对延迟要求更高,可考虑将静态资源托管到阿里云 OSS + CDN,仅用 Vercel 处理 SSR 请求。
域名购买与 DNS 基础配置见 域名与 DNS 配置。Cloudflare 账号设置见 Cloudflare 配置指南。 本文最后更新于 2026-04。