使用CNAME DNS记录重定向时如何保留源HTTP请求头?
问题解答
当域名DNS由GoDaddy管理、仅通过CNAME指向Cloudflare Pages时,无法保留Cloudflare Worker注入的请求头,核心原因和解决办法如下:
为什么请求头会丢失?
Cloudflare Worker的执行依赖域名接入Cloudflare的代理体系(即开启“橙色云”状态)。如果域名DNS托管在GoDaddy,仅配置CNAME指向Cloudflare,流量只会通过GoDaddy解析到Cloudflare节点,但不会触发Cloudflare的代理流程——Worker仅对接入Cloudflare代理的域名生效,未接入的请求不会经过Worker处理,因此Worker注入的请求头不会出现在响应中。
可行替代方案
如果无法迁移DNS到Cloudflare,可跳过Worker,直接在Cloudflare Pages项目中配置响应头:
- 进入Cloudflare Pages项目的「Settings」→「Headers」页面
- 添加自定义响应头(比如
X-Frame-Options: SAMEORIGIN)并保存 - 配置完成后,用GoDaddy管理的旧域名访问站点,响应头会直接从Cloudflare Pages源站返回,无需经过Worker处理
注意事项
- 确保GoDaddy的CNAME记录正确指向Cloudflare Pages的默认域名(如
your-project.pages.dev) - 检查GoDaddy是否对该域名开启了自带的代理或转发功能,这类设置可能会修改或移除响应头,需保持关闭状态
内容的提问来源于stack exchange,提问作者MorenoMdz
相关产品推荐
相关产品推荐

