Я рекомендую начать с автоматически созданного экспресс-проекта, выполнив:
npm install -g express-generator
express --view=jade new-project-folder-name
... если вы сделаете это, DEBUG=* node bin/www
запустит проект на порту 3000 с включенной отладкой.
Практически говоря, вы, вероятно, на самом деле не хотите запускать свой экспресс-проект на порту 80, а вместо этого вы хотите использовать надлежащий веб-сервер, такой как Nginx или Apache, а затем настроить его в качестве обратного прокси-сервера для вашего экспресса. приложение на локальном порту (вроде 3000). Также используйте UFW, чтобы уменьшить защитную поверхность вашего сервера.
Таким образом, вы также можете использовать Lets Encrypt, чтобы позволить веб-серверу управлять всей деятельностью, связанной с SSL, и оставить свое экспресс-приложение, чтобы просто беспокоиться о его бизнесе.
Для начала попробуйте запустить проект на порту 3000 и посетить сайт по адресу http://your -ip-address: 3000 и посмотреть, получите ли вы другой результат. Если вы это сделаете, вам, вероятно, нужно использовать Интернет, чтобы собрать воедино решение, похожее на то, что я описал выше. В этом отношении уроки Digital Ocean довольно хороши.