Skip to content

静态网站托管入门

2843 字约 9 分钟

GitHub Actions部署教程

2025-08-01

前置条件

在开始之前,您只需要准备两样东西:

  1. GitHub 账户:如果您还没有,请在 GitHub.com 免费注册。这将是您代码的中心枢纽。

  2. 简单网站项目:计算机上包含网站文件的文件夹。如果您还没有,请创建一个名为 my-first-website 的文件夹,并在其中创建一个名为 index.html 的文件,内容如下:

    index.html

GitHub Pages

此方法直接从您的 GitHub 仓库托管网站。它非常简单,与 GitHub 生态系统深度集成,是完美的起点。

GitHub Pages 分步部署指南

  1. 创建新的 GitHub 仓库

    仓库(或"repo")是托管在 GitHub 上的项目文件夹。这是您网站代码的存放地。

    • 登录 GitHub 并转到您的仪表板。

    • 在右上角,点击 + 图标并选择 New repository

    • 填写表单,详细信息如下:

      仓库名称Requiredstring

      输入一个唯一的名称,如 my-first-website。GitHub 将在您网站的 URL 中使用此名称。

      描述Optionalstring

      简要描述您的项目,例如:"我的第一个上线网站,使用 GitHub Pages 部署!"。

      公开 / 私有Required

      选择 Public。免费的 GitHub Pages 从公开仓库托管。

      添加 README 文件Optionalboolean

      添加 README 文件来描述您的项目是个好习惯。您可以勾选此框。

      ::::

    • 点击绿色的 Create repository 按钮。

  2. 上传您的网站文件

    仓库创建完成后,现在可以添加您的网站文件了。

    • 在新仓库的主页上,点击 Add file 按钮并选择 Upload files
    • 将您的 index.html 文件(或整个项目文件夹)拖放到指定区域。
    • 在上传区域下方,您会找到 Commit changes 部分。"commit" 是您更改的快照。
    • 输入简洁的提交消息,如 feat: 添加初始网站文件
    • 点击 Commit changes
  3. 激活 GitHub Pages

    现在,您只需要告诉 GitHub 将这些文件作为网站提供服务。

    • 在您的仓库中,点击 Settings 标签。
    • 在左侧边栏中,点击 Pages
    • Build and deployment 下,对于 Source,选择 Deploy from a branch
  4. 配置和保存

    告诉 GitHub 哪个分支和文件夹包含您的网站。

    • Branch:从下拉菜单中选择 main。这是您仓库的主分支。
    • Folder:选择 /(root)。这告诉 GitHub 您的 index.html 在主目录中。
    • 点击 Save
  5. 访问您的在线网站!

    GitHub 现在正在构建和部署您的网站。这个过程称为"GitHub Action",可能需要一两分钟。

    • 短暂等待后,刷新 Pages 设置页面。
    • 顶部将出现一个绿色框:"您的网站已上线于 https://<您的 GitHub 用户名>.github.io/<您的仓库名称>/"。
    • 点击链接查看您的"Hello, World!"消息在互联网上实时显示!

    请耐心等待!

    有时您的网站可能需要 5-10 分钟才能首次显示。如果您看到 404"Not Found"错误,请稍等片刻,清除浏览器缓存,然后重试。

使用 GitHub Actions 自动化部署

手动上传对于入门来说很好,但现代 Web 开发的真正力量在于自动化。通过使用 GitHub Actions 工作流程,您可以设置一个过程,每次向 main 分支推送更改时自动构建和部署您的网站。

这被称为持续集成/持续部署(CI/CD)的最佳实践。

设置您的自动部署工作流程

  1. 创建工作流程目录

    GitHub Actions 工作流程由位于仓库内特殊目录中的 YAML 文件定义。

    • 在项目的根文件夹中,创建一个名为 .github 的新文件夹。
    • .github 内,创建另一个名为 workflows 的文件夹。
  2. 创建工作流程文件

    .github/workflows 目录中,创建一个名为 deploy.yml 的新文件。

  3. 添加工作流程代码

    将以下代码复制粘贴到您的 deploy.yml 文件中。这是 VuePress 网站的标准工作流程。

    .github/workflows/deploy.yml
  4. 提交并推送工作流程文件

    保存 deploy.yml 文件,将其提交到您的仓库,并推送到 GitHub。

    git add .github/workflows/deploy.yml
    git commit -m "ci: 添加 GitHub Actions 部署工作流程"
    git push
  5. gh-pages 分支配置 GitHub Pages

    工作流程将自动创建一个名为 gh-pages 的新分支,并将您构建的网站文件推送到其中。您需要告诉 GitHub Pages 使用这个分支。

    • 转到您仓库的 Settings > Pages
    • Build and deployment 下,将 Source 更改为 Deploy from a branch
    • Branch 更改为 gh-pages,文件夹更改为 /(root)
    • 点击 Save
  6. 观看魔法发生

    从现在开始,每次您向 main 分支推送更改时,工作流程都会自动运行。您可以在 GitHub 仓库的 Actions 标签下查看其进度。它将构建您的网站并将完成的产品部署到您的在线 GitHub Pages URL。

问答和故障排除

以下是您可能遇到的一些常见问题和问题的答案。

为什么我的网站显示 404 Not Found 错误?

  • 等待几分钟:部署可能需要时间在整个网络上传播。这是最常见的原因。请给它 5-10 分钟,特别是在第一次部署时。
  • 检查文件路径:确保您的主 HTML 文件名为 index.html。如果您使用框架,请验证 Build output directory 是否正确。对于标准 VuePress 网站,它应该是 docs/.vuepress/dist
  • 检查仓库可见性:对于 GitHub Pages 的免费版本,您的仓库必须设置为 Public
  • 检查您的分支:确保您部署的分支(maingh-pages)是托管提供商设置中选择的分支。

我的 CSS 或 JavaScript 没有加载。为什么?

  • 路径不正确:这是最可能的原因。检查 HTML 中的 hrefsrc 路径。相对路径(/style.css../scripts/main.js)通常是最可靠的。
  • 区分大小写:Web 服务器通常区分大小写。style.css 是与 Style.css 不同的文件。仔细检查您的文件名和路径的大小写是否正确。
  • 构建问题:如果您使用框架,构建过程可能未能包含您的资源。检查 GitHub Actions 或 Cloudflare Pages 中的构建日志是否有错误。

如何使用自定义域名?

两个平台都为自定义域名提供了出色的支持。

  • 对于 GitHub Pages:转到 Settings > Pages > Custom domain,输入您的域名(例如 www.yourdomain.com),然后保存。然后,转到您的域名注册商网站,添加 GitHub 提供的 CNAMEA 记录。
  • 对于 Cloudflare Pages:在您的 Pages 项目中,转到 Custom domains 标签并按照设置向导操作。如果您域名的 DNS 已经由 Cloudflare 管理,这个过程是无缝的,通常即时完成。

我应该使用 GitHub Pages 还是 Cloudflare Pages?

更新日志

2025/8/4 11:40
查看所有更新日志
  • 2b7ff-web-deploy(Auto): Update base URL for web-pages branch