Таким образом, как видно из названия, я развертываю приложение реагирования с бэкэндом express на экземпляре ec2.
Что я пытаюсь сделать, чтобы сделать:
(просто перечислите это здесь, чтобы предоставить критический контекст на случай, если я напортачу в другом месте)
мой рабочий режим express работает на порту 80 с реактивной сборкой html как root.
запустить сборку на экземпляре ec2
использовать nginx для обратного прокси для моего домена по https и порту 443
запустить сервер. js в производственном режиме через PM2
Вещи, с которыми у меня сейчас проблемы:
* 1030 Конфигурация * My Nginx изначально была настроена для попытки прокси приложения реакции, работающего с приложением express, через обратный прокси между ними. Это изменилось, поэтому я пытаюсь настроить сервер так, чтобы в моем приложении был полностью изменен прокси-сервер.
Я следил за этой статьей в качестве справочного материала, но главное отличие в том, что они хотят, чтобы я использовал файл nginx conf, а не файл sites_enabled, который я выполнил при первоначальной настройке nginx. Из того, что я вижу в статье, похоже, что конфигурационные файлы также изменили компоновку, так что это может быть устаревшей практикой.
Вот то, что у меня сейчас есть для Nginx sites_enabled:
listen 443 default_server;
listen [::]:443 default_server;
server_name example.com www.example.com;
root /home/ubuntu/client/build;
location / {
try_files $uri /index.html;
}
location /complete {
proxy_pass https://www.example.com;
}
# managed by Certbot
ssl on;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
# managed by Certbot
}
server {
if ($host = www.example.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = example.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 0.0.0.0:80;
server_name example.com www.example.com;
rewrite ^ https://$host$request_uri? permanent;
}
На момент написания этого я не смог запустить такие вещи, поэтому я можно использовать только express, настроив его на порт 443 и разместив там файлы сертификации.