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

Gatsby createPages接口创建的页面部署到Github Pages后404如何解决

Gatsby部署Github Pages动态页面404问题解决方案

问题根因

Github Pages 默认会将项目站点部署在对应仓库名的子路径下,你本地开发时站点运行在根路径,createPage生成的页面路径没有匹配部署后的子路径前缀,因此部署后访问返回404。

修复步骤

  • 第一步:在gatsby-config.js中添加pathPrefix配置,值为你的Github仓库名称
module.exports = {
  // 此处填写你的仓库名,和Github上的仓库名保持完全一致
  pathPrefix: `/giorgio-martini`,
  // 保留你原来的所有其他配置
}
  • 第二步:修改package.json中的build命令,添加--prefix-paths参数让路径前缀配置生效
{
  "scripts": {
    "build": "gatsby build --prefix-paths",
    // 保留原来的其他脚本配置
  }
}
  • 第三步:校验yaml中的路径配置
    你yaml文件里定义的路径如果是/probable-future这类带前导斜杠的格式不需要修改,Gatsby会自动拼接前缀,最终生成的部署路径为/giorgio-martini/probable-future,和Github Pages的路径规则匹配。
  • 第四步:确认跳转逻辑
    页面内所有跳转请使用Gatsby官方提供的Link组件,不要用原生a标签,Link组件会自动适配pathPrefix,不需要手动给跳转路径加前缀。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 17:45:07