All the answers are great! Wanted to touch on the theory a bit so people can understand why Heroku sets it port to 80 or 443.
Computers had to create a convention to communicate with each other with a different protocol. For example HTTP, HTTPS, SSH, FTP , etc.
As a result, there was an agreement that computers will communicate HTTP with port 80, https
will communicate on port 443, and so on with the other protocol. Below is a table displaying all the protocol's conventional reserve port number.
Now some of you people may be thinking well if these are reserve port number how come my computer lets me use port number 80 and 443 (ex localhost:80). You can use any port number (in fact you can choose up to 65,535 port number) but once you want to deploy to live and want others to use your application then you will have to start using the convention of port 80 (HTTP) or port 443 (https
).
Heroku makes it nice and easy for you by providing an environment variable process.env.PORT
to apply for the correct conventional port number so others can access your app.
heroku config:get PORT
gives you ? Also, you can tryheroku config:unset PORT
and see if your hardcoded default gets picked up. – Dede