Nginx с поддержкой нескольких сайтов ломает nginx

Nginx с поддержкой нескольких сайтов ломает nginx

У меня странная проблема на моем сервере Nginx. Я использую Nginx как обратный прокси для нескольких служб, работающих на моих серверах внутри.

Вот чего я пытался добиться:

app1.mydomain.com ---                                         --- server 1: 10.0.0.2
                      \              10.0.0.1               / 
                       |--- nginx reverse proxy server --- |
                      /                                     \
app2.mydomain.com ---                                         --- server 2: 10.0.0.3

Итак, я добавил первый для app1, добавил настройки DNS в моем провайдере домена, и все заработало отлично. Я был очень взволнован, поэтому я пошел на второй, и затем все сломалось. Я запустил, nginx -tи все прошло отлично. Сервер Nginx все еще работал без ошибок, но я потерял возможность просматривать app1.mydomain.com

Конфигурации в основном одинаковы, за исключением server_name и proxy_pass.

файл: /etc/nginx/sites-available/app1.mydomain.com

server {
    server_name app1.mydomain.com;

    location / {
        client_max_body_size 512M;
        proxy_pass http://10.0.0.2;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

}

файл: /etc/nginx/sites-available/app2.mydomain.com

server {
    server_name app2.mydomain.com;

    location / {
        client_max_body_size 512M;
        proxy_pass http://10.0.0.3;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

}

Я сделал это, добавив каждую конфигурацию в отдельный файл в sites-available, а затем выполнив следующее:sudo ln -s /etc/nginx/sites-available/app1.mydomain.com /etc/nginx/sites-enabled/

Это отлично сработало для app1, но после того, как я проделал то же самое для app2, я потерял доступ к app1, и app2 не появился.

В моем маршрутизаторе я перенаправил порты 80 и 443 на обратный прокси-сервер 10.0.0.1, и это единственные правила на моем маршрутизаторе. У моего провайдера доменных имен у меня есть правильные записи A, указывающие на правильный IP. Я смог проверить, что все работает с приложением 1, но после создания символической ссылки для приложения 2, чтобы перейти в sites-enabled и перезапустить nginx, я теряю доступ ко всему.

Есть идеи, что происходит? Спасибо!

решение1

@symcbean на самом деле указал на ответ. Конфигурации, которые я опубликовал, были неполными. Для app1 я использовал точно показанную конфигурацию (которая каким-то образом работала), а затем запустил certbot, который добавил конфигурацию TLS и переменную listen в конфигурацию.

Затем я добавил конфигурацию для приложения 2 (точно так, как показано) и не получил никаких ошибок на сервере, но начал получать ошибки об отказе в подключении при попытке доступа к приложению 1 или приложению 2. После добавления конфигурации прослушивания и перезапуска nginx все заработало.

Спасибо!

Связанный контент