Vercel
Vercel 无法识别 htmlpress 项目,也猜不出它的构建目录。只需一个小小的
vercel.json 即可。
构建站点
htmlpress build
输出位于 .htmlpress/build/。
配置 vercel.json
将以下内容放在项目根目录,让 Vercel 使用正确的命令并提供正确的目录:
{
"framework": null,
"buildCommand": "npx gethtmlpress build",
"outputDirectory": ".htmlpress/build"
}
这就是全部配置:此后 Vercel 会负责安装、构建和静态服务,并用构建产出的
404.html 响应未知路径。Vercel 会忽略 _headers;请改在
vercel.json 中设置响应头。
通过 git 集成部署
推荐方式:在 vercel.com/new 导入你的仓库。Vercel
会读取 vercel.json,运行与你本地相同的构建。每次推送到 main
都会发布到生产环境;其他每个分支和 PR 都会获得独立的预览 URL。
通过 CLI 部署
用于一次性或脚本化部署:
vercel deploy --prod
首次运行时会提示执行 vercel login,并把目录关联到一个 Vercel 项目。Vercel
会自行运行 buildCommand。
使用 GitHub Actions 部署
Vercel 的 git 集成本身通常已经足够,但你也可以让部署以 CI 测试为前提:
name: deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/setup-node@v4
with:
node-version: 24
- run: npx gethtmlpress build --json
- run: npx vercel deploy --prod --token=${{ secrets.VERCEL_TOKEN }}
env:
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}
当某个页面构建失败时,第一个 run 会在部署之前让任务失败。你需要把
VERCEL_TOKEN、VERCEL_ORG_ID 和
VERCEL_PROJECT_ID 设为密钥(后两者在首次本地执行
vercel link 后位于 .vercel/project.json 中)。
自定义域名
在项目控制台中,进入 Settings → Domains → Add。Vercel 会引导你完成 DNS
记录配置,并自动签发证书。在 htmlpress.yaml 中把同一域名设为
site。
另请参阅
用 ❤ 和 Htmlpress 构建