🚨 部署踩坑记录 - 刻骨铭心

问题:网站更新不生效(2天调试)

现象

根本原因

GitHub Pages 从根目录部署,不是 docs/ 目录!

仓库结构:
├── index.html          ← GitHub Pages 用这个(旧版本)❌
├── docs/
│   └── index.html      ← 我们更新的(新版本)✅
└── ...

浪费时间的错误排查

  1. ❌ 反复检查 GitHub push 状态
  2. ❌ 清除 Cloudflare 缓存多次
  3. ❌ 等待 GitHub Pages 构建
  4. ❌ 检查 CNAME 配置
  5. ❌ 怀疑 DNS 问题

正确验证方法

# 检查 GitHub 上的文件(源文件)
curl -s https://raw.githubusercontent.com/qzw-alt/demi/master/index.html | grep "<title>"

# 检查 GitHub Pages 实际部署(绕过缓存)
curl -sH "Cache-Control: no-cache" https://chinahospitalsguide.com/ | grep "<title>"

# 对比两者是否一致

解决方案

将 docs/ 内容同步到根目录:

cp -r docs/* .
git add -A
git commit -m "Sync docs to root for GitHub Pages"
git push

预防措施

  1. 永远记住:GitHub Pages 默认从根目录部署
  2. 如果要使用 docs/:必须在 Settings → Pages 中显式选择 "Deploy from a branch" → "master" → "/docs"
  3. 验证时:总是用 curl -H "Cache-Control: no-cache" 绕过缓存
  4. 检查清单

教训

"不是 GitHub Pages 的问题,是我的理解问题"

铭记于心


记录日期:2026-03-11 痛苦指数:⭐⭐⭐⭐⭐ 教训价值:无价