部署在GitHub Pages的React项目添加自定义域名后出现404错误
React项目部署GitHub Pages自定义域名出现大量404的解决思路
结合你的情况,给你几个实际排查和解决的方向:
1. 修正package.json的homepage配置
直接把homepage字段改成你的自定义域名,注意要和GitHub Pages设置里的域名完全一致,建议用HTTPS(GitHub会自动给自定义域名配SSL证书):
"homepage": "https://your-custom-domain.com"
改完后重新执行npm run build && npm run deploy,确保新的构建文件部署到GitHub Pages。
2. 解决React Router导致的路由404
你用到了react-router-dom,但GitHub Pages是静态托管服务,直接访问子路由或刷新页面时,服务器找不到对应静态文件就会返回404。解决方法:
在项目的public文件夹下新建_redirects文件,内容只需要一行:
/* /index.html 200
这个文件会让GitHub Pages把所有请求转发到index.html,交给React Router处理路由逻辑。添加后重新构建部署。
3. 确认GitHub Pages的域名配置状态
去仓库的Settings > Pages页面检查:
- 自定义域名填写正确,无拼写错误
- 已勾选"Enforce HTTPS"选项(DNS解析完成后这个选项会自动出现,可能需要等几分钟让GitHub生成SSL证书)
- 页面显示"Your site is live at https://your-custom-domain.com",说明部署状态正常
4. 清除缓存验证残留配置
有时候本地缓存会导致旧配置残留,试试:
- 用浏览器无痕模式访问自定义域名
- 手动删除
build文件夹后重新执行构建部署 - 用
nslookup your-custom-domain.com确认域名解析到GitHub官方IP(185.199.108.153、185.199.109.153等)
内容的提问来源于stack exchange,提问作者CourtneyJ
相关产品推荐
相关产品推荐

