我如何解决Heroku H10 / 503错误 - 一个故事
#网络开发人员 #node #heroku #git

那是一个美丽的下午,时间是下午2:17。太阳散发着热,太阳的光线自由地闪烁到我编码的房间里。
到下午2:30,我已经完成了我的CRUD todo-list代码,该代码已准备好根据我的理解水平进行部署。

我登录到Heroku,它是一个平台作为服务(PAA),使开发人员能够完全在云中构建,运行和操作应用程序。几个月前,我在平台上部署了一个Node.js应用程序,因此我决定关注documentation created for deploying an existing application to Heroku

谨慎地关注文档后,我迷路了,然后我决定使用查询进行Google搜索:

如何解决Heroku H10错误

在此之前,我已经搜索了MDN Docs for 503 error,该MDN Docs for 503 error被报道为服务不可用,这意味着我的服务器还没有准备好处理请求。

从我从Google搜索中获得的结果,我被带到了Heroku docs on their errors,这几乎是错误的,没有解决。

但是,在我对503和H10进行的搜索时,很明显,造成错误的唯一原因是我的代码。我再次搜索了How to solve the Heroku H10 error,但是有了信心,这次和I found a blog post on Dev which listed in detail all I needed to do

遵循这篇文章,我做到了:

  • procfile中的错误

我确保我的procfile没有错误,因为little space可能会触发heroku错误。

web: node app.jsweb : node app.js

  • 设置Heroku的端口

我审查了我的代码,以确保我设置了正确的heroku端口,用于kude4

app.listen(process.env.PORT || 3000, function () {
  console.log("The server has started successfully");
});
  • 必需的环境变量

我创建的应用程序具有数据库,我没有在Heroku上设置数据库URI。我要做的就是获取数据库的URI并将其作为Heroku上的配置变量征入。

Where to set Config Var on Heroku

  • 设置启动脚本

我在package.json中没有我的启动脚本,这可能导致该应用程序崩溃,所以我添加了它在更安全的一面。

"scripts": {
    "start": "node app.js"
  }

我已经设置了节点引擎,我很高兴。

"engines": {
    "node": "16.14.2"
  }

最后,我做了仪式git add .git commit -m "msg"heroku push origin main,将我的代码推到了Heroku repo。

所有戏剧后,我与heroku restart重新启动了Dyno,我的网站正在工作。那一刻,我成为了最幸福的男人。

结束

希望您成功解决Heroku H10错误。在Twitter @ EfeCollins7上关注我。我想听听您的评论。谢谢。