rebase.page

为 rebase.now 上的仓库托管静态网站。推送 pages 分支,网站即可上线。

原子更新 · 自动 HTTPS · 自定义域名

01 — 发布

在 rebase.page 上发布网站

  1. 选择仓库

    网站地址由仓库名决定,<user> 可以是用户名或组织名。仓库必须设为公开。

    • rebase.now/<user>/pageshttps://<user>.rebase.page/
    • rebase.now/<user>/<project>https://<user>.rebase.page/<project>/
  2. 把构建产物提交到 pages 分支

    提交构建产物,不要提交源码。纯 HTML 或任意静态网站生成器的输出都可以,根目录下需要有 index.html。

    git push origin pages
  3. 添加 Web 钩子

    打开仓库的“设置 → Web钩子”,添加一个 Forgejo 类型的钩子:

    目标URL
    上面对应的网站地址
    HTTP方法
    POST
    POST内容类型
    application/json
    触发条件
    推送事件
    分支过滤
    pages
  4. 推送即上线

    每次推送到 pages 都会整体替换网站。在新版本完全就绪之前,访客看到的始终是旧版本。Web 钩子的“最近推送记录”会显示每次更新的结果。

02 — 自定义域名

使用自己的域名

任意仓库的 pages 分支都可以发布到自己的域名上。需要添加两条 DNS 记录,一条指明来源仓库,一条把流量指向 rebase.page:

_git-pages-repository.example.org.  TXT    "https://rebase.now/<owner>/<repo>.git"
example.org.                        CNAME  rebase.page.

03 — 补充说明

托管细节

路径

访问 /docs/ 时返回 docs/index.html。如果网站中有 /404.html,访问不存在的路径时会返回这个页面。

重定向

在 _redirects 文件中按 Netlify 语法编写规则,例如 /old /new 301。不支持占位符和条件匹配,另外 /a 与 /a/ 是两个不同的路径。

HTTPS

证书自动签发,rebase.page 子域名和自定义域名都一样;签发后通过 HTTP 访问会自动跳转到 HTTPS。

限制

单个网站最大 128 MB,单次更新需在一分钟内完成。不会发布 Git LFS 管理的文件。