Назад | Перейти на главную страницу

При внутренней обработке перенаправления Nginx 302 перенаправление должно проходить через прокси-сервер.

У меня есть конфигурация Nginx, которая обслуживает конечную точку AWS Kibana.

server {
    listen 0.0.0.0:80;
    location / {
    proxy_pass http://<vpc-elasticsearch-endpoint>/_plugin/kibana/;
    }
}

Проблема в том, что когда я получаю доступ к URL-адресу Nginx, я перенаправляюсь на другую конечную точку с 302, (AWSognito), к которой я не могу получить доступ из браузера.

URL-адрес когнитора выглядит так: http: // vpc-*****. amazonaws.com

Мне нужно разрешить URL-адрес Cognito через сам Nginx. Возможно, добавьте еще один блок местоположения для разрешения Cognito. Таким образом, конечный пользователь видит исходную конечную точку nginx, которую он использовал для доступа к Nginx перед перенаправлением в Cognito.

Как этого добиться в Nginx?

Попробуй добавить Host заголовок для прокси. По умолчанию nginx устанавливает его как имя хоста, найденное в proxy_pass директива.

server {
    listen 0.0.0.0:80;
    location / {
        proxy_pass http://<vpc-elasticsearch-endpoint>/_plugin/kibana/;
        proxy_set_header Host $host;
    }
}