【问题标题】:Javascript app (with webpack ) not opening on heroku , " App boot timeout"Javascript 应用程序(带有 webpack)未在 heroku 上打开,“应用程序启动超时”
【发布时间】:2021-08-27 20:08:43
【问题描述】:

我目前正在尝试让我的 javascript+webpack 应用程序部署在 Heroku 上。

应用程序的Github链接here

它在本地运行良好,但我无法在 Heroku 上部署它。我收到一条错误消息,例如:App boot timeout。请看下面的截图:

屏幕截图 1:

屏幕截图 2:

有人知道我该如何解决这个问题吗?

ps:我尝试了 Netlify,设法显示了应用程序,但 API 调用不起作用,因为我的 API URL 以 http 而不是 https 开头,但无法解决为该项目选择的 API 不在 https 上的问题: -(所以这就是我试图让这个在 Heroku 上工作的原因。

【问题讨论】:

    标签: javascript heroku webpack


    【解决方案1】:

    发生这种情况是因为您的 express 代码绑定到端口 8081,而 heroku 在部署 express 应用程序时喜欢传入它自己的端口。这就是为什么您的错误消息显示Web process failed to bind to $PORT within 60 seconds of launch。要解决此问题,您需要将端口作为变量传递并绑定到它。

    server.js

    const app = require("./index.js");
    app.set('port', process.env.PORT || 8081);
    
    app.listen(app.get('port'), function () {
      console.log(`running on localhost: `, server.address().port);
    });
    

    最小代码示例here.

    【讨论】:

    • 如果这对你有用,请接受! @Raphael Pereira
    猜你喜欢
    • 1970-01-01
    • 2015-01-20
    • 1970-01-01
    • 1970-01-01
    • 2018-10-13
    • 2016-10-04
    • 1970-01-01
    • 1970-01-01
    • 2021-08-22
    相关资源
    最近更新 更多