这次把基于 Mizuki 搭建的博客部署到 EdgeOne Pages,整体流程比我预想里顺很多。
先看结论Mizuki 官方其实已经提供了不少部署方式,像 Vercel、Netlify、Cloudflare Pages、EdgeOne Pages,甚至服务器部署和 Docker 部署也都能用。 如果更看重国内访问速度、面板操作体验和 GitHub 自动部署这一套流程,那我会更推荐 EdgeOne Pages。下面就按这个方式,整理一下怎么把 Mizuki 这个静态博客快速部署起来。
部署前先确认这几件事
正式开始之前,我建议先把下面几项过一遍:
如果你连本地构建都还没跑通,建议先把本地问题解决掉,再上平台部署。
因为平台构建失败时,排查成本一定比本地高。
不要直接用 npmMizuki 项目是基于
pnpm的,package.json里也有限制其他包管理器的逻辑。
所以部署时不要用默认的npm install,否则非常容易在安装阶段就直接报错。
Mizuki 仓库的推荐配置
这部分是最值得单独记下来的,因为它直接决定了能不能一次过。
| 配置项 | 推荐值 | 说明 |
|---|---|---|
| 代码源 | GitHub | EdgeOne Pages 对 GitHub 集成比较直接 |
| 分支 | main | 如果你用的是 master,就按自己的实际分支来 |
| Node.js 版本 | 20.x 优先 | 18+ 通常也可以,但我更建议直接用较新的 LTS |
| 安装命令 | pnpm i | 如果面板把安装和构建拆开填写,就单独填这里 |
| 构建命令 | pnpm build | 如果只有一个命令框,可以直接填 pnpm i && pnpm build |
| 输出目录 | dist | Astro 构建产物默认就在这里 |
为什么我直接写 pnpm buildMizuki 项目的构建流程已经收进了
pnpm build,所以在部署平台里直接调用项目自己的构建命令会更稳,也更方便后续继续维护。
实际部署流程
1. 先把博客代码推到 GitHub
如果仓库还没建,先在 GitHub 创建一个新仓库,再把本地开发调整好的博客代码推上去。
2. 在 EdgeOne Pages 里新建项目
登录腾讯云控制台后,进入 EdgeOne Pages,新建一个站点或应用。
第一次用的话,平台通常会引导你选择代码来源。
这里直接选 GitHub 就行。
3. 授权 GitHub 并绑定仓库
接下来平台会跳转到 GitHub 授权页,让 EdgeOne 读取你的仓库列表。
授权完成后,回到 EdgeOne Pages 页面,选择你刚才推送好的博客仓库。
这里要注意两件事:
- 仓库选对
- 分支选对
如果你的正式内容都在 main,那这里就不要手滑选成别的测试分支。
因为 EdgeOne Pages 后面会持续监听这个分支,后续每次推送都会自动触发部署。
4. 把构建设置填正确
这一段是整篇文章真正的重点。
如果面板提供的是“框架预设”,你可以优先尝试:
Astro- 或者
静态网站
如果它没有完全识别对,也没关系,手动把命令改对更重要。
推荐填写方式如下:
pnpm i && pnpm build输出目录填:
dist安装命令:
# Installpnpm i# Buildpnpm build5. 等第一次构建完成
保存配置后,EdgeOne Pages 会开始第一次拉取仓库并构建站点。
第一次部署一般会比后续更新慢一点,这是正常现象。
构建成功后,你通常会拿到一个平台分配的默认访问域名。
这时候先别急着绑定自定义域名,先做一件更重要的事:
直接打开默认域名,确认首页、文章页、静态资源和样式都正常。
我通常会重点检查下面几项:
- 首页是否能正常打开
- 图片资源是否加载正常
- 字体有没有明显丢失
- 页面切换是否正常
- 文章列表和文章详情页是否都能进入
6. 确认自动部署是通的
第一次部署成功,不代表后面每次更新都一定没问题。
最稳妥的做法是:随便改一点点内容,再推送一次,看 EdgeOne Pages 会不会自动重新构建。
只要这一步是通的,后面你的博客更新流程就会非常顺:
- 本地写文章或改配置
- 推送到 GitHub
- EdgeOne Pages 自动构建
- 网站自动更新
这也是我比较喜欢这种托管方式的原因之一,维护成本很低。
Mizuki 项目部署里最容易踩的几个点
1. 包管理器填错
这是最常见的问题,没有之一。
如果你用了:
npm installyarn install
那很可能会在安装阶段直接失败。
对 Mizuki 项目来说,老老实实用 pnpm 是最省事的。
2. 输出目录填错
Astro 静态站点最后产物是 dist。
如果你把输出目录填成别的,比如 build 或者空着不管,部署成功了也可能访问不到内容。
3. 只看构建成功,不看页面细节
有时候“构建成功”只是说明命令没报错,不代表页面就完全正常。
尤其是博客这类项目,最好手动点一遍:
- 首页
- 一篇文章
- 导航菜单
- 图片资源
- 自定义域名(如果已经绑定)
4. 把平台问题和项目问题混在一起
如果你发现 EdgeOne Pages 构建失败,先分两种情况看:
- 本地也构建不过:优先修本地
- 本地能过,平台不过:重点看平台 Node 版本、构建命令、安装方式
这样排查会快很多。
自定义域名可以什么时候再做
如果你想让博客用自己的域名,完全可以等站点先跑通之后再加。
我的建议顺序一直都是:
- 先让默认域名可访问
- 再去绑定自定义域名
- 最后检查 DNS 与证书状态
这样做的好处是,一旦访问异常,你能立刻判断问题到底出在:
- 站点构建
- 域名解析
- 还是证书签发
最后总结
对 Mizuki 这个静态博客项目来说,部署到 EdgeOne Pages 并不复杂,真正关键的其实就三件事:
- 仓库先放到 GitHub
- 构建流程坚持用
pnpm - 输出目录确认是
dist
只要这三项没填错,第一次部署大概率就能顺利跑起来。
后面写文章、改页面、调配置,也都只需要继续往 GitHub 推送,EdgeOne Pages 会自动帮你把更新发出去。
如果这篇文章对你有帮助,欢迎分享!
部分信息可能已经过时
































