主域名托管于Vercel/Netlify,子域名无法指向LAMP主机如何配置?
配置子域名指向PHP主机平台的解决方案
问题背景
主域名domain.com托管在Vercel/Netlify(运行Gatsby或Next.js站点),但邮箱服务、部分需部署PHP脚本/WordPress的子域名依赖搭载cPanel的传统主机(如DigitalOcean、Linode)。当前DNS记录存在冲突,导致子域名sub.domain.com跳转至Vercel错误页面,需调整配置让所有子域名指向PHP主机。
现有DNS记录
| 主机记录 | 记录类型 | TTL | 记录值 |
|---|---|---|---|
| @ | ALIAS | 10800 | domain.netlify.com. |
| www | CNAME | 10800 | domain.netlify.com. |
| www | CNAME | - | cname.vercel-dns.com |
| @ | A | - | 76.76.21.21 |
解决步骤
1. 清理冲突DNS记录
- 删除重复的
wwwCNAME记录(指向cname.vercel-dns.com的条目),避免DNS解析逻辑混乱。 - 处理主域名
@的记录冲突:当前@同时存在ALIAS(指向Netlify)和A记录(指向传统主机IP),二选一保留即可——若主站需留在Vercel/Netlify,保留ALIAS;若主站要迁回传统主机,保留A记录。
2. 添加泛域名解析规则
在DNS管理面板中添加一条泛域名记录:
- 主机记录:填
* - 记录类型:选
A - 记录值:填入你的传统PHP主机IP(比如现有A记录的
76.76.21.21) - TTL:建议设置为10800(3小时)
这条泛域名记录会匹配所有未单独配置的子域名(如sub.domain.com、blog.domain.com等),自动指向PHP主机。
3. 验证解析生效
- 等待DNS记录生效(遵循TTL时间,通常1-3小时),通过命令行执行
nslookup sub.domain.com或dig sub.domain.com,确认解析结果指向PHP主机IP。 - 若某一子域名需单独指向Vercel/Netlify,可单独添加该子域名的CNAME/A记录,其优先级高于泛域名规则。
4. 传统主机端绑定配置
登录cPanel等控制面板,在子域名管理功能中创建对应子域名(如sub.domain.com),并绑定到目标PHP站点目录或WordPress安装路径,确保主机能正确响应该子域名的HTTP请求。
内容的提问来源于stack exchange,提问作者Sulei
相关产品推荐
相关产品推荐

