在建立个人网站或企业应用时,我们经常需要为不同的服务(如博客、API、测试环境)分配不同的子域名。本文将指导你如何将腾讯云注册的域名接入 Cloudflare,并完成子域名的解析设置。
1. 为什么选择 Cloudflare?
虽然腾讯云自带 DNS 解析服务(DNSPod),但 Cloudflare 提供了更强大的免费 CDN、DDoS 防护以及全球加速功能。通过 Cloudflare 管理 DNS,可以更方便地开启“小黄云”加速和 SSL 自动配置。
2. 前提条件
- 已在腾讯云注册了一个域名。
- 已拥有一个 Cloudflare 账号。
- 已在腾讯云购买了服务器(如轻量应用服务器)或拥有公网 IP。
3. 第一步:将域名接入 Cloudflare
如果你已经将域名的 DNS 服务器指向了 Cloudflare,可以跳过此步骤。
- 登录 Cloudflare 控制台。
- 点击 Add a Site,输入你的主域名(例如
example.com)。 - 选择 Free Plan。
- Cloudflare 会扫描现有的解析记录。点击继续。
- 修改 DNS 服务器:Cloudflare 会给出两个名称服务器地址(如
ashley.ns.cloudflare.com)。 - 前往 腾讯云域名管理控制台。
- 在域名列表中点击“管理” -> “修改 DNS 服务器”。
- 选择“自定义 DNS”,填入 Cloudflare 提供的地址并保存。
注意:DNS 修改生效可能需要 24-48 小时,但通常几分钟内即可完成。
4. 第二步:在 Cloudflare 中设置子域名
一旦 Cloudflare 显示域名状态为“有效”,你就可以开始添加子域名了。
- 在 Cloudflare 侧边栏选择 DNS -> Records。
- 点击 Add record。
- Type(类型):
- 如果你想指向一个服务器 IP,选择 A 记录。
- 如果你想指向另一个域名(如 GitHub Pages),选择 CNAME 记录。
- Name(名称):输入你的子域名前缀。
- 例如,想设置
blog.example.com,只需输入blog。
- 例如,想设置
- IPv4 address:输入你在腾讯云服务器的公网 IP 地址。
- Proxy status(代理状态):
- 开启(黄色云朵):流量经过 Cloudflare 转发,隐藏真实 IP,享受 CDN 加速和防护。
- 关闭(灰色云朵):仅作 DNS 解析,直接连接服务器 IP。
- 点击 Save。
5. 第三步:在腾讯云服务器上配置
设置好解析后,你的服务器还需要知道如何处理来自该子域名的请求。
以 Nginx 为例:
你需要修改 Nginx 配置文件,添加对子域名的监听:
server {
listen 80;
server_name blog.example.com; # 你的子域名
location / {
root /var/www/blog; # 你的项目目录
index index.html;
}
}
修改后记得重启 Nginx:sudo nginx -s reload。
6. 第四步:验证解析是否生效
你可以使用以下几种方法验证:
- Ping 命令:
ping blog.example.com - Nslookup/Dig:
dig blog.example.com - 浏览器访问:直接在浏览器输入子域名。
7. 常见问题
- SSL 证书错误:如果开启了 Cloudflare 的代理(小黄云),建议在 Cloudflare 的 SSL/TLS 设置中选择 Full 或 Full (Strict) 模式。
- 解析不生效:请检查腾讯云的 DNS 服务器是否已成功更换,可以通过
whois查询确认。 - 防火墙问题:确保腾讯云控制台的“安全组”或“防火墙”已开放 80 (HTTP) 和 443 (HTTPS) 端口。
通过以上步骤,你就成功地利用 Cloudflare 为腾讯云上的服务配置了子域名解析。