如何部署以index.html为入口的React应用到GitHub Pages?
解决方案
1. 修正package.json的homepage配置
你的homepage路径多了冗余的/public/,这会导致部署路径匹配错误,修改为:
"homepage": "https://simharuk2021.github.io/reduxcart/"
2. 调整GitHub Pages的部署源
打开你的GitHub仓库页面,进入Settings → Pages,在Source区域:
- 分支选择
gh-pages(你的deploy脚本会将build产物推送到这个分支) - 路径选择
/root,保存设置
3. 重新执行部署流程
先清理部署缓存,再重新构建并部署:
rm -rf node_modules/.cache/gh-pages npm run deploy
4. 确认public目录入口的正确性
React项目中public下的index.html是编译模板,真正的应用逻辑入口仍在src/index.js,需要确保public/index.html里包含<div id="root"></div>节点,否则React无法挂载渲染内容。
5. 排除README文件的干扰
如果部署后仍显示README,检查gh-pages分支的根目录是否存在README.md文件。GitHub Pages会优先展示根目录的README,解决方法是在gh-pages分支中删除该文件,确保build生成的index.html是根目录的核心文件。
内容的提问来源于stack exchange,提问作者Simon Hart
相关产品推荐
相关产品推荐

