欢迎使用 zz.Pages 发布静态网页

💡 原文中文,约3000字,阅读约需7分钟。
📝

内容提要

zz.NIC 推出静态网页托管平台 zz.Pages,对标 GitHub Pages。其域名与个人身份解绑,每个仓库可绑定独立域名(限 zz.ac 后缀)。用户创建仓库、配置 workflow、设置 DNS 记录并推送代码后,即可自动构建发布网站,平台通过 Nginx 自动签发 SSL 证书。

🔎

延伸解读

与 GitHub Pages 的关键差异

zz.Pages 将域名与个人身份解绑,每个仓库可绑定独立的 zz.ac 后缀域名,而 GitHub Pages 通常要求用户创建 yourname.github.io 仓库,一个仓库只能有一个主域名,多项目需通过子目录或分支区分。这为需要为每个项目设置独立品牌的用户提供了便利,但 zz.Pages 目前仅支持 zz.ac 域名,限制了自定义域名的选择范围。

部署流程中的必要步骤

使用 zz.Pages 需完成几个关键配置:创建仓库并添加 workflow 文件,其中必须指定 runs-on: zz-pages 和引用 pages action,同时设置 domain 和 build-command。此外,需配置两条 DNS 记录:CNAME 将个性域名指向 git.zz.ac,TXT 记录授权仓库绑定。这些步骤缺一不可,否则构建或访问将失败。

安全机制与自动化证书

zz.Pages 通过 TXT 记录验证域名与仓库的关联,防止他人将仓库绑定到你的域名,提升了安全性。平台使用 Nginx 和 ngx_http_acme_module 自动签发 SSL 证书,用户无需手动管理证书,简化了 HTTPS 部署。但需注意,域名生效后再推送代码,否则可能构建失败。

❓

Q&A

zz.Pages 是什么?它和 GitHub Pages 有什么不同?

zz.Pages 是 zz.NIC 官方提供的静态网页托管平台,对标 GitHub Pages。主要不同在于:zz.Pages 将域名与个人身份解绑,每个仓库都可以绑定独立的个性域名(目前仅限 zz.ac 后缀),而 GitHub Pages 通常一个账号只能有一个主域名,多个项目只能放在子目录或分支下。

如何使用 zz.Pages 发布一个静态网页?

步骤:1. 注册 zz.ID 并登录 zz.Git;2. 创建网站仓库并添加网站内容;3. 在仓库中添加 workflow 文件(如 .forgejo/workflow/pages.yml),指定 runs-on: zz-pages,引用 pages action,并设置 domain 和 build-command;4. 设置两条 DNS 记录:一条 CNAME 将个性域名指向 git.zz.ac,一条 TXT 记录授权 zz.Pages 绑定仓库;5. 推送代码到远端,workflow 执行完成后即可通过个性域名访问网站。

zz.Pages 的域名绑定有什么限制?

zz.Pages 目前限制只能绑定 zz.ac 后缀的域名。每个仓库都可以指定自己的个性域名,域名与个人身份解绑。

在 zz.Pages 中,workflow 文件需要如何配置?

workflow 文件路径推荐为 .forgejo/workflow/pages.yml。关键配置包括:runs-on 必须指定为 zz-pages 以匹配专用 runner;必须引用 pages action(如 uses: https://git.zz.ac/zz/pages@main);必须指定 domain(个性域名)和 build-command(构建命令),并将构建结果输出到 ${ZZ_PAGES_OUTPUT} 指定的目录。

使用 zz.Pages 需要设置哪些 DNS 记录?

需要设置两条 DNS 记录:第一条,将个性域名 CNAME 指向 git.zz.ac,例如 example.zz.ac. CNAME git.zz.ac.;第二条,添加 TXT 记录授权 zz.Pages 为你的域名构建网站,例如 _zz-pages.example.zz.ac TXT "repo=alice/website",其中 repo=alice/website 表示将域名与 zz.Git 仓库关联,防止他人绑定你的域名。

zz.Pages 如何自动签发 SSL 证书?

zz.Pages 使用 Nginx + ngx_http_acme_module 来自动签发 SSL 证书并提供 Web 服务。

🏷️

标签

➡️

继续阅读