我正在尝试在heroku上部署我的节点应用程序。
这个应用程序工作正常localy,并正确推送到heroku。
但是,每当我尝试访问该网址时,浏览器都会显示:
An error occurred in the application and your page could not be served. Please try again in a few moments.
If you are the application owner, check your logs for details
起初,我认为那是因为我没注意我正在听的端口(我真的不明白Heroku如何处理,如果端口很重要)所以我复制了相同的代码,就像他们在他们的入门...... :
port = process.env.PORT || 5000;
server.listen(port, function() {
console.log("Listening on " + port);
});
我的package.json非常基本:
{
"name":"Radiorev",
"version":"0.0.1",
"dependencies":{
"express":"3.3.5",
"socket.io":"0.9.16"
}
}
帮助!
顺便说一下,当我键入heroku日志时,我的cmd工具会显示一些非常不可读的内容......零换行符。
答案 0 :(得分:5)
Heroku不支持websockets,所以请尝试将其关闭
// assuming io is the Socket.IO server object
io.configure(function () {
io.set("transports", ["xhr-polling"]);
io.set("polling duration", 10);
});
根据Using Socket.IO with Node.js on Heroku
更新:H14 - Error H14 (No web processes running)
尝试添加包含以下内容的Procfile:
web: node server.js
答案 1 :(得分:3)
问题可能是您将网络动态扩展为0,因此无法运行服务器。尝试运行:
heroku ps:scale web=1
(参考:https://devcenter.heroku.com/articles/error-codes#h14-no-web-dynos-running)