我创建了一个带有react的应用程序,该应用程序有一些从mongodb获取数据的抓取操作。当我完成应用程序并且一切正常时,我将其部署到了heroku,但出现了错误的主机头错误,因此在寻找解决方案后,我发现我应该从客户端文件夹中的proxy://localhost:5000
中删除package.json
。现在,您可以在heroku中看到该应用程序,但是在heroku和我的PC中,提取操作正在返回index.html。他们全部。如果我将代理放回计算机中的感染区,但在heroku中再次出现de Invalid host Header错误。请帮助我
这是我在根文件夹package.json
中的"scripts": {
"server": " nodemon server",
"test": "echo \"Error: no test specified\" && exit 1",
"start": " concurrently \"npm run server\" \"cd client && npm start\"",
"heroku-postbuild": "NPM_CONFIG_PRODUCTION=false npm install --prefix client && npm run build --prefix client"
}
中的脚本
它在src之外的server.js
中
if (process.env.NODE_ENV === "production") {
// Static folder
app.use(express.static("client/build"));
app.get("*", (req, res) => {
res.sendFile(path.resolve(__dirname, "client", "build", "index.html"));
});
}
我像其他人一样创建了一个Procfile
web: node my-app/server.js
这是我的github仓库 github repository