The wiki knowledge

教你用GitHub_Pages+Cloudflare免费搭建网站

上篇 《不花一分钱拥有自己的域名》 搞定了免费域名和 Cloudflare 托管。域名现在还是个空壳——它还不知道该指向哪里。

这篇把它接到你的 GitHub Pages 上。做完之后,别人访问 你的名字.ccwu.cc 就能看到你的网站,地址栏还带安全锁。当然,你也可以把它接到自己的其他网页。


前提确认

开始之前确认三件事:

没开 GitHub Pages?去仓库 → Settings → Pages → Source 选 main 分支 → Save。几分钟后你的网站就在 你的用户名.github.io 上线了。


第一步:在 Cloudflare 添加 DNS 记录

进入 Cloudflare 仪表盘 → 你的域名 → DNS记录

添加 一条CNAME 记录(根域名):

字段 填什么
类型 CNAME
名称 @ (代表根域名)
目标 你的GitHub用户名.github.io
代理状态 开启(橙色云朵)

点保存。

再添加一条给 www:

字段 填什么
类型 CNAME
名称 www
目标 你的GitHub用户名.github.io
代理状态 开启(橙色云朵)

为什么用 CNAME 而不是 A 记录? GitHub Pages 的 IP 可能会变,用 CNAME 指向 用户名.github.io 更稳。而且 Cloudflare 开启了代理(橙色云朵),用户的请求先经过 Cloudflare 全球 CDN,再转发到 GitHub,国内访问速度会快不少。


第二步:在 GitHub Pages 绑定域名

1. 打开 Pages 设置

进入仓库 → SettingsPages

2. 填入自定义域名

Custom domain 输入框里,填你的完整域名(如 xiaoming.ccwu.cc ),点 Save

GitHub 会自动在仓库根目录生成一个 CNAME 文件,里面写着你的域名。这个文件别删。

3. 等 DNS 验证

保存后 GitHub 会检查 DNS 是否指向了正确的地址。刚开始可能显示 "DNS check in progress"——这是正常的,DNS 传播需要几分钟。


第三步:开启 HTTPS

Cloudflare 的 SSL/TLS 设置:

进入 Cloudflare → 你的域名 → SSL/TLS概述

加密模式选 「完全(严格)」 。再往下,开启 「始终使用 HTTPS」

回到 GitHub Pages 设置页面,勾选 「Enforce HTTPS」 。如果这个选项灰了——别慌,因为流量走了 Cloudflare 代理,GitHub 那一侧看不到原始请求,HTTPS 实际上已经在 Cloudflare 层生效了。


第四步:验证

打开浏览器,输入你的域名(如 xiaoming.ccwu.cc )。

正常情况:网站打开了,地址栏有小锁,一切 OK。

如果打不开:


这套方案的花费

项目 费用
域名(ccwu.cc) 免费,10 年
Cloudflare DNS + CDN 免费
GitHub Pages 托管 免费
HTTPS/SSL 证书 免费(Cloudflare 自动签发)

对于个人博客、项目展示网页、学习笔记站,这套组合完全够用。我做过的几个小网站都是采用这个。


延伸:如果不用 GitHub Pages

Cloudflare 自己也提供 Pages 服务——直接把代码推到 GitHub,Cloudflare Pages 自动构建和部署。优势是无限带宽(GitHub Pages 每月有 100GB 软限制),国内访问速度可能更快。配置方式差不多,只是目标地址换成 Cloudflare Pages 的域名。

#软件