@fateseekers

Корректный вариант создание размещения поддомена nginx?

Пытаюсь создать поддомен вида dev.example.com для размещения на нем одного из контуров приложения, но на поддомене отображается релизный контур.

Ожидаем результат такого вида:
example.com -> релизная версии проекта
dev.example.com -> latest версия

Пробовал писать в одном конфиге, пробовал писать в раздельных результат одинаковый

events { }

http {
    server {
        listen 80;
        listen [::]:80;
        server_name dev.example.com www.dev.example.com www.example.com example.com;

        location / {
            return 301 https://$host$request_uri;
        }

        location ~ /.well-known/acme-challenge {
            allow all;
            root /tmp/acme_challenge;
        }
    }

    server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
        server_name example.com www.example.com;

        ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

        location / {
            proxy_http_version 1.1;
            proxy_cache_bypass $http_upgrade;

            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            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;

            proxy_pass http://nuxt:3000;
        }

        location /api/admin/jenkins {
            proxy_http_version 1.1;
            proxy_cache_bypass $http_upgrade;

            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            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;

            proxy_pass http://jenkins:8080;
        }
    }

    server {
        listen 443 ssl http2;
        listen [::]:443 ssl http2;
        server_name dev.example.com www.dev.example.com;

        ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

        location / {
            proxy_http_version 1.1;
            proxy_cache_bypass $http_upgrade;

            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            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;

            proxy_pass http://latest:3005;
        }
    }
}


Все контейнеры для прокси имеются, контейнер nginx не выдает каких-либо ошибок
Запись DNS на домене тоже есть
A *.example.com → IP
A dev.example.com → IP
  • Вопрос задан
  • 182 просмотра
Пригласить эксперта
Ответы на вопрос 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
СведИте все server{} под один http{}.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы