好吧,我已经尝试在StackOverflow上查询我的问题,但我找不到能帮助我的东西,因为我尝试的一切都没有对结果产生任何影响(应用程序错误)。
所以我真的很难过,因为应用程序在我的本地主机上运行得非常好,但是我无法让它在Heroku上工作,它只是给了我一个应用程序错误,所以我不知道问题是什么。
所以我的package.JSON文件看起来像这样:
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "nodemon --use_strict index.js",
"bundle": "webpack"
},
我已经尝试将“nodemon”更改为“node”并摆脱了--use_strict并在本地主机上运行它仍然可以正常工作但是Heroku应用程序仍然给我一个应用程序错误。
index.js我唯一可以想到的是坏事(改变它并在这里运行):
// start the server
app.listen(3000, () => {
console.log('Server is running.');
});
webpack.config.js:
const path = require('path');
module.exports = {
// the entry file for the bundle
entry: path.join(__dirname, '/client/src/app.jsx'),
// the bundle file we will get in the result
output: {
path: path.join(__dirname, '/client/dist/js'),
filename: 'app.js',
},
module: {
// apply loaders to files that meet given conditions
loaders: [{
test: /\.jsx?$/,
include: path.join(__dirname, '/client/src'),
loader: 'babel-loader',
query: {
presets: ["react", "es2015"]
}
}],
},
// start Webpack in a watch mode, so Webpack will rebuild the bundle on changes
watch: true
};
在git push heroku master之后正确部署: https://c1.staticflickr.com/3/2873/33519283263_3d9a711311_z.jpg
我正在尝试让这个应用程序在Heroku上运行: https://vladimirponomarev.com/blog/authentication-in-react-apps-creating-components
我认为可能的问题可能是你必须在一个shell上运行“run bundle”而在另一个shell中运行“npm start”。
另一件事,这个应用程序有很多东西是在node_modules中手动安装的,如果我试图在github上推送它而Heroku不接受它会崩溃,所以我认为这可能也是一个问题虽然我不知道怎么解决这个问题。
这也使用Express和Mongodb,我将我的mongodb信息添加到index.json文件并运行应用程序,它工作得非常好,在检查数据库之后,正确的信息也在其中,所以它不是那样的任
答案 0 :(得分:2)
您应该使用process.env.PORT而不是自定义端口3000。
检查您是否购买了mongodb插件,您可以免费获得一个,但间距有限!
如果你还没有这样做,请使用该数据库的配置变量!