Heroku H10/503 오류 해결 방법 - 이야기

2967 단어 githerokuwebdevnode
아름다운 오후였고 시간은 오후 2시 17분이었습니다. 태양은 뜨겁게 빛나고 있었고 태양 광선은 내가 코딩하고 있는 방으로 자유롭게 번쩍이고 있었습니다.
오후 2시 30분까지 내 이해 수준에 따라 배포할 준비가 된 내 코드CRUD todo-list를 완성했습니다.

개발자가 완전히 클라우드에서 애플리케이션을 구축, 실행 및 운영할 수 있게 해주는 PaaS(Platform as a Service)인 Heroku에 로그인했습니다. 몇 달 전에 플랫폼에 Node.js 앱을 배포하여 documentation created for deploying an existing application to Heroku을 따르기로 결정했습니다.

설명서를 주의 깊게 따른 후 길을 잃고 다음 검색어를 사용하여 Google 검색을 하기로 결정했습니다.

How to solve Heroku H10 error



그 전에 이미 서비스를 사용할 수 없는 것으로 보고된MDN Docs for 503 error을 검색했는데 이는 내 서버가 요청을 처리할 준비가 되지 않았음을 의미합니다.

Google 검색에서 얻은 결과에서 Heroku docs on their errors을 찾았는데 예상대로 해결할 수 있는 오류가 거의 없었습니다.

하지만 503과 H10에서 검색한 결과 오류를 일으키는 유일한 원인이 내 코드라는 것이 분명해졌습니다. 나는 다시 How to solve the Heroku H10 error를 찾았지만 믿음으로 이번에는 .

이 게시물에 이어 다음을 수행했습니다.
  • Procfile의 버그
  • little space가 Heroku 오류를 유발할 수 있으므로 Procfile에 버그가 없는지 확인했습니다.
    web: node app.js 아니 web : node app.js
  • Heroku의 포트 설정

  • 코드를 검토하여 Express 서버에 올바른 Heroku 포트process.env.PORT를 설정했는지 확인했습니다.

    app.listen(process.env.PORT || 3000, function () {
      console.log("The server has started successfully");
    });
    


  • 필수 환경 변수

  • 내가 만든 앱에는 데이터베이스가 있고 Heroku에서 내 데이터베이스 URI를 설정하지 않았습니다. 내가 해야 할 일은 내 데이터베이스의 URI를 가져와서 Heroku의 구성 변수로 등록하는 것뿐이었습니다.


  • 시작 스크립트 설정

  • package.json에 내 시작 스크립트가 없어서 앱 충돌을 일으킬 수 있으므로 더 안전한 쪽에 추가했습니다.

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


    나는 이미 내 노드 엔진을 설정했고 갈 준비가 되었습니다.

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


    마지막으로 git add . , git commit -m "msg"heroku push origin main 코드를 Heroku 저장소로 푸시하는 의식을 수행했습니다.

    모든 드라마가 끝난 후 heroku restart로 내 dyno를 다시 시작했고 내 사이트가 작동했습니다. 나는 그 순간 가장 행복한 사람이 되었다.



    Heroku H10 오류를 성공적으로 해결하시기 바랍니다. Twitter @에서 나를 팔로우하세요. 귀하의 의견을 듣고 싶습니다. 감사.

    좋은 웹페이지 즐겨찾기