简介:本文详细介绍如何利用 GitHub Pages 部署个人静态网页,并完成自定义域名配置,涵盖从基础环境搭建到 DNS 解析的完整流程,适合开发者及个人站长参考。
GitHub Pages 是 GitHub 提供的免费静态网站托管服务,基于 Git 仓库管理,支持通过 gh-pages 分支或 docs 文件夹直接发布内容。其底层架构采用 Jekyll 静态网站生成器(可选),但用户也可直接上传 HTML/CSS/JS 文件。
技术优势:
用户名.github.io(如 john-doe.github.io)方法一:直接上传
# 本地初始化 Git 仓库git initgit add .git commit -m "Initial commit"git remote add origin https://github.com/用户名/用户名.github.io.gitgit push -u origin master
方法二:使用 GitHub Desktop
推送完成后,访问 https://用户名.github.io 即可查看网页。首次部署可能存在 10 分钟内的缓存延迟。
在仓库根目录创建 404.html 文件,GitHub Pages 会自动识别。
若网页部署在子目录(如 /project),需在 _config.yml(Jekyll 项目)中添加:
baseurl: "/project"
通过 _config.yml 定义变量,在模板中通过 {{ site.变量名 }} 调用:
title: "我的个人网站"description: "开发者技术博客"
.com(全球通用),次选 .cn(中国备案)、.tech(技术类)
185.199.108.153185.199.109.153185.199.110.153185.199.111.153
若使用子域名(如 www.example.com):
用户名.github.ioCNAME 文件,内容为子域名(如 www.example.com)GitHub Pages 默认启用 HTTPS,但需注意:
CNAME 文件是否与 DNS 记录一致<head> 中添加:
<link rel="preload" href="style.css" as="style"><link rel="preload" href="script.js" as="script">
创建 .github/workflows/deploy.yml 实现自动部署:
name: Deploy to GitHub Pageson:push:branches: [ main ]jobs:build-deploy:runs-on: ubuntu-lateststeps:- uses: actions/checkout@v2- run: npm install && npm run build- uses: peaceiris/actions-gh-pages@v3with:github_token: ${{ secrets.GITHUB_TOKEN }}publish_dir: ./dist
npm audit)_config.yml 中禁用目录列表:
show_dir_listing: false
| 现象 | 可能原因 | 解决方案 |
|---|---|---|
| 404 错误 | 分支错误 | 确认推送至 gh-pages 或 main 分支 |
| 混合内容警告 | HTTP 资源引用 | 修改为 https:// 或相对路径 |
| 自定义域名不生效 | DNS 缓存 | 等待 24 小时或修改 hosts 文件测试 |
GitHub Pages 结合自定义域名方案,为开发者提供了零成本的个人网站解决方案。建议:
通过本文介绍的完整流程,开发者可在 30 分钟内完成从零到上线的全过程,实现专业级的个人网页部署与品牌域名展示。