先理解三件事
在动手之前,把这三个概念分清楚,后面所有操作都会变得顺理成章:
- 域名(
ghsy1.xyz)—— 你家门牌号,方便别人找到你,需要每年续费。 - 托管 —— 帮你 24 小时开门迎客的地方,静态站点可以免费用。
- DNS 解析 —— 把门牌号指向实际住址的记录,在你的域名服务商后台填写。
静态博客不需要数据库和服务器程序,本质上就是一堆 HTML、CSS 和图片文件。 所以托管方只需要「把文件发到全球节点上」,这件事目前好几家都免费做,而且比自建服务器稳定。
第一步:选一家托管平台
三个常见选择,按上手难度从低到高排列:
| 平台 | 适合谁 | 上线方式 |
|---|---|---|
| Netlify / Vercel | 完全不想碰命令行 | 把文件夹直接拖进网页即可,最快 1 分钟看到效果 |
| Cloudflare Pages | 想长期维护、希望国内访问较稳 | 连接 GitHub 仓库,之后每次提交自动重新发布 |
| GitHub Pages | 代码本来就放在 GitHub | 仓库设置里开启 Pages,指定分支与目录 |
我更推荐 Cloudflare Pages:它同时是一家域名解析服务商, 域名和托管在同一个后台,证书、CDN、解析一次配好,长期省心。
第二步:把网站文件传上去
这个站点的目录结构是下面这样,把整个文件夹一起上传,不要只传 /:
ghsy-blog/
├─ / ← 首页
├─ /about ← 关于页
├─ 404.html ← 找不到页面时显示
├─ posts/ ← 所有文章
├─ assets/ ← 样式、脚本、图标
├─ feed.xml ← RSS 订阅
├─ sitemap.xml ← 给搜索引擎看的目录
└─ CNAME ← 里面写着你的域名
/(或者站点根目录)。
因为这是纯静态站点,不需要编译。
第三步:配置 DNS 解析
上传之后平台会给你一个临时地址,比如 ghsy-blog.pages.dev。
接下来在你的域名服务商后台(购买 ghsy1.xyz 的地方)添加解析记录。
用 Cloudflare Pages 时:把域名接入 Cloudflare 后,进入 Pages 项目的「自定义域」填上
ghsy1.xyz,解析记录和证书会自动创建;同时再加一条
www 的 CNAME 指向项目地址,让带 www 的访问也能打开。
用 GitHub Pages 时:需要手动添加这些记录。
| 类型 | 名称 | 值 | 作用 |
|---|---|---|---|
| A | @ | 185.199.108.153 | 把主域名指向 GitHub 的服务器 |
| A | @ | 185.199.109.153 | |
| A | @ | 185.199.110.153 | |
| A | @ | 185.199.111.153 | |
| CNAME | www | 你的用户名.github.io | 让 www.ghsy1.xyz 也能访问 |
记录里的 @ 表示主域名本身(也就是 ghsy1.xyz)。
保存后通常几分钟到几小时生效,生效之后后台会显示「解析正常」。
第四步:开启 HTTPS
浏览器地址栏的那把小锁代表流量被加密。上面几家托管平台都提供免费证书, 你只需要在后台找到一个类似 「强制 HTTPS」 或 「Always Use HTTPS」 的开关,打开它。
证书一般会在解析生效后自动签发,如果一开始提示「证书还在申请」, 等十几分钟再看即可,不需要自己上传任何文件。
第五步:让搜索引擎找到你
上线只是第一步,还要主动告诉搜索引擎这里有个新站点:
- 在 Google Search Console
提交
https://blog.ghsy1.xyz/sitemap.xml; - 国内的 百度搜索资源平台 也支持提交站点地图;
- 确认
robots.txt里没有误写成禁止抓取,本模板默认是允许抓取的。
之后每写一篇新文章
把这个清单走一遍就好了,熟练之后大约三分钟:
- 复制
templates/post-template.html,另存为posts/新文章地址.html; - 替换标题、摘要、日期和正文;
- 在
/里复制一张卡片,改掉链接和文字; - 把新页面加进
sitemap.xml和feed.xml; - 把改动提交到 GitHub(如果用了自动部署),网站会自动更新。
写在最后
整个流程里唯一需要花钱的是域名本身,托管、证书、CDN 都可以免费。 真正需要耐心的是 DNS 生效那几十分钟 —— 这时候不妨去泡杯茶, 回来刷新一下,看到自己的域名叫出第一声「你好」,那种感觉挺值的。