3
respostas

Projeto funciona local, mas não abre no heroku

Boa tarde pessoal, meu projeto está funcionando certinho no meu pc, mas após subir pro heroku ele não funciona a home ("/"). As outras rotas parecem estar funcionando corretamente.

Existe ainda um segundo problema, após ele não encontrar a home, as outras rotas passam a retornar código 503, aí nada mais funciona.

Estou usando "heroku logs --tail" para acompanhar os erros que surgem mas não consigo encontrar o problema. Aparecem os seguintes erros:

at=error code=H10 desc="App crashed" method=GET path="/produtos" host=rspavarina-node.herokuapp.com request_id=a64d2a7c-3e3f-4ff1-a59f-ac3faf46b032 fwd="187.66.195.160" dyno= connect= service= status=503 bytes= protocol=https

at=error code=H10 desc="App crashed" method=GET path="/produtos/form" host=rspavarina-node.herokuapp.com request_id=f9412f62-ce5c-4ee9-9c2a-dc47128c2695 fwd="187.66.195.160" dyno= connect= service= status=503 bytes= protocol=https

at=error code=H10 desc="App crashed" method=GET path="/" host=rspavarina-node.herokuapp.com request_id=97c5e3f4-d47f-4626-8d7b-bf57e25216fb fwd="187.66.195.160" dyno= connect= service= status=503 bytes= protocol=https

3 respostas

Oi Rafael, 503 é um erro muito genérico. Sua aplicação pode ter quebrado em algum ponto causando o travamento do processo do node em um erro e por isso depois de travado, ele não funciona mais.

A gente precisa verificar o código.

Antes de subir pro heroku, você fez adaptações de banco de dados e configuração do projeto da forma que o heroku espera?

Fui seguindo as mudanças feitas no curso. Em teoria meu projeto está igualzinho deveria estar. Aqui está o link pro meu projeto no github, para poder ver o código.

Rafael, a conexão com o banco de dados tá funcionando normalmente? Consegue garantir isso? Isso por que a home tenta listar os produtos como não consegue, o processo node no heroku trava e sua aplicação inteira quebra.

É bom lembrar que após o processo node travar em um erro, por mais que tente acessar outra roda, o processo é incapaz de responder. Entende?

De qualquer forma, você não tem nenhuma rota que não dependa de uma conexão com o banco, ou seja, qualquer rota vai quebrar a aplicação, então, podemos considerar que o problema está nessa tentativa de conexão.

Lembrando que você também precisa definir as variáveis de ambiente lá no Heroku, elas estão certinhas?