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

React项目部署GitHub Pages后显示空白页问题求助

React 部署 GitHub Pages 空白页修复方案

按优先级逐一排查以下问题,基本能解决99%的空白页情况:

  • 路由模式不兼容
    如果你项目中使用了react-router-dom的BrowserRouter,这是最常见的故障原因。GitHub Pages 是纯静态文件服务,不支持 History 模式路由的路径回退规则,直接访问页面时服务端找不到对应路径的资源,就会返回空白/404。
    两种修复方式选其一即可:
    1. 直接将BrowserRouter替换为HashRouter,路由会自动拼接#标识,不需要服务端做任何适配,改完重新执行部署命令即可生效,是最简单的方案。
    2. 如果你需要保留BrowserRouter,首先要给路由组件添加basename属性,值和你仓库名完全一致:
    // 路由根组件配置
    <BrowserRouter basename="/ContactManager">
      <App />
    </BrowserRouter>
    
    额外需要在项目public目录下新建404.html,内容和打包后的index.html完全一致,同时在index.html的head标签内加入路径重定向脚本,解决子路由刷新404的问题。
  • 构建工具路径配置错误
    如果你是用 Vite 创建的 React 项目(不是基于 create-react-app 搭建),package.json里的homepage字段不会被Vite识别,必须手动在vite.config.js中配置资源基础路径,否则打包后所有JS、CSS资源的引用路径都是站点根路径,会直接加载失败:
    import { defineConfig } from 'vite'
    import react from '@vitejs/plugin-react'
    
    export default defineConfig({
      plugins: [react()],
      base: '/ContactManager/', // 注意首尾斜杠不要漏,值为你的仓库名
      // 其余原有配置保持不变
    })
    
    改完配置后重新执行npm run deploy即可。
  • 仓库Pages配置校验
    打开项目仓库的 Settings -> Pages 页面,确认部署源选择的是gh-pages分支,部署目录选择根目录/(root),不要选错成main分支或者docs目录。
  • 控制台报错定位
    打开部署后的空白页按F12调出开发者工具,查看Console面板的报错信息:如果是静态资源404报错,对应检查上面提到的路径配置;如果是JS语法报错,检查代码中是否存在未转译的高版本语法、或者空值引用之类的运行时错误。

你之前部署成功的FitClub项目,大概率是用了HashRouter,或者是基于create-react-app搭建自动识别了homepage字段做了路径适配,当前项目对照上面的点逐一排查即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 21:39:28