部署

sitelo 的构建产物就是普通静态文件:sitelo build 会把 HTML、CSS 和 JS 写入 dist/。任何静态托管都可以 —— 下面的配置只假设 npm run builddist/

干净 URL 就是带 index.html 的目录(/about/index.html/about),所以漂亮的 URL 开箱即用,不需要任何重定向规则。404.html 会自动产出 —— 这正是 Netlify、Cloudflare Pages 和 GitHub Pages 都认得的约定。

这些配置的可直接复制版本都在基础示例里(仓库中的 examples/basic)。

Netlify

[build]
  command = "npm run build"
  publish = "dist"

Vercel

{
  "$schema": "https://openapi.vercel.sh/vercel.json",
  "framework": null,
  "buildCommand": "npm run build",
  "outputDirectory": "dist",
  "installCommand": "npm install"
}

Cloudflare Pages

在控制台构建:把构建命令设为 npm run build,输出目录设为 dist。或者用命令行部署:npx wrangler pages deploy dist

# Cloudflare Pages
name = "my-site"
compatibility_date = "2025-01-01"
pages_build_output_dir = "dist"

AWS Amplify

# AWS Amplify 托管
version: 1
frontend:
  phases:
    preBuild:
      commands:
        - npm install
    build:
      commands:
        - npm run build
  artifacts:
    baseDirectory: dist
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*

若只用 S3 + CloudFront:先 npm run build,再把 dist/ 同步到存储桶。

GitHub Pages

# GitHub Pages
name: Deploy
on:
  push:
    branches: [main]
permissions:
  contents: read
  pages: write
  id-token: write
jobs:
  deploy:
    runs-on: ubuntu-latest
    environment:
      name: github-pages
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 20
      - run: npm ci && npm run build
      - uses: actions/upload-pages-artifact@v3
        with:
          path: dist
      - uses: actions/deploy-pages@v4

部署在子路径下(user.github.io/repo)?构建时加上 --base /repo/

发布之前