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

基于Vite的React项目部署Heroku Stack 22遇404错误求助

React+Vite部署Heroku Stack22(Nginx Buildpack)404问题排查方案
  • 修正nginx.conf.erb的root路径
    Heroku应用的所有文件默认存放在/app目录下,你配置的root /dist;是错误的绝对路径,需要改为指向应用内的dist文件夹:
root /app/dist;

同时确保配置中包含索引文件指定:

index index.html index.htm;
  • 确保Heroku构建阶段自动生成dist文件夹
    不要依赖本地预生成的dist(若.gitignore排除了该目录则不会被提交),在package.json中配置正确的build脚本,让Heroku自动执行构建:
"scripts": {
  "build": "vite build",
  // 其他脚本...
}

Heroku会自动触发npm run build(或yarn build,取决于你的包管理器)生成dist目录。

  • 调整static.json配置
    nginx buildpack会读取static.json,但需避免配置冲突。将root改为dist(无需前缀./),同时添加单页应用路由配置,避免前端路由404:
{
  "root": "dist",
  "routes": {
    "/**": "index.html"
  }
}
  • 检查Procfile启动命令
    部分版本的nginx buildpack启动脚本为start-nginx而非start-nginx-solo,尝试修改Procfile:
web: bin/start-nginx
  • 通过Heroku日志定位问题
    执行命令查看实时日志,nginx的错误日志会明确显示文件查找失败的具体路径,帮助精准排查:
heroku logs --tail

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 05:02:36