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

Github Pages含.nojekyll时,错误URL无法跳转至自定义404.html的解决方法

解决Github Pages带.nojekyll时自定义404不生效的问题

核心解决方案:用Jekyll配置替代.nojekyll,兼顾带点文件夹访问与404功能

你可以通过配置Jekyll的_config.yml来实现需求,既保留带点文件夹的可访问性,又让自定义404页面正常生效:

  • 删除根目录下的.nojekyll文件
  • 在根目录新建_config.yml文件,写入以下内容(将.your-dot-folder替换为你实际的带点文件夹名称,比如Google验证常用的.well-known):
    include:
      - .your-dot-folder/
    
  • 提交并推送修改到GitHub仓库

这样Jekyll在构建站点时会主动包含你指定的带点文件夹,生成的静态站点中该文件夹会被保留,爬虫可直接访问;同时GitHub Pages的404自动重定向规则会正常触发,错误URL会跳转至你的自定义404.html页面。

原理说明

默认情况下Jekyll会忽略所有以点开头的文件夹,.nojekyll的作用是完全禁用Jekyll构建流程,让GitHub Pages直接托管静态文件。但通过include配置,我们可以让Jekyll主动包含需要的带点文件夹,同时保留Jekyll的原生功能(包括404页面的自动重定向逻辑)。

备选方案(依赖外部服务)

如果确实不想启用Jekyll,可以用Cloudflare等CDN接管自定义域名,通过CDN的页面规则将所有404请求转发到你的404.html页面,但这个方法需要额外配置外部服务,优先级低于第一种方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 10:32:23