You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitHub Pages部署后首页正常 链接HTML文件报404如何解决

GitHub Pages仅首页index.html可访问、其余HTML页面返回404排查修复方案

按以下顺序逐一排查即可解决问题:

  • 核对文件名大小写与实际存储路径
    GitHub Pages服务端运行在Linux环境,对文件名、路径大小写完全敏感,本地Windows/macOS系统默认不区分大小写,本地测试正常不代表线上路径匹配。比如链接写的是/About.html但仓库内实际文件是about.html、或是文件实际存放在pages/子目录但链接写的是根路径/doc.html,都会直接触发404。
  • 检查首页跳转链接的写法正确性
    禁止写本地文件协议的绝对路径(比如file:///C:/site/xxx.html这类本地路径在线上完全无法访问),同目录下的页面直接写对应文件名即可,比如<a href="doc.html">文档</a>,子目录页面要补全正确的相对路径,同时排查笔误:不要把.html后缀错写为.htm、.hml,不要多打或者漏写路径中的斜杠。
  • 确认目标文件已经成功推送到GitHub部署分支
    本地新增/修改的HTML文件如果没有执行commit、push操作,线上仓库根本不存在对应文件,必然返回404。直接打开GitHub仓库页面,切换到配置Pages部署的对应分支(通常为main分支或gh-pages分支),逐一确认所有需要访问的HTML文件存在于对应路径、文件内容完整非空。
  • 排查Jekyll默认规则导致的文件拦截
    GitHub Pages默认会启用Jekyll静态站点生成器处理站点内容,所有以下划线开头的文件夹、文件(比如_post/xxx.html)会被Jekyll识别为特殊内部资源,不会作为公开静态页面输出,直接访问就会404。解决方法二选一:要么把下划线开头的文件/文件夹改成非下划线开头的命名,要么在仓库根目录上传一个空的、命名为.nojekyll的文件,告知GitHub Pages跳过Jekyll构建流程,所有文件按原始结构公开访问。
  • 处理部署延迟与缓存问题
    GitHub Pages文件更新后通常有1-3分钟的部署生效延迟,刚push完文件不要立刻测试,等待几分钟后按Ctrl+F5强制刷新浏览器缓存,也可以在访问链接后拼接?t=1这类随机参数绕过本地缓存验证。

内容的提问来源于stack exchange,提问作者ADITYA K

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 17:31:05