У меня NGINX работает на порту 8443
внутри контейнера Docker в Openshift. У меня также определен маршрут Openshift, который перенаправляет трафик из порта 443
в контейнер 8443
.
Это работает нормально, пока я не попытаюсь получить доступ к блоку местоположения без завершающего /
в URL. Например, когда я иду на:
https://test.example.com/example
Сетевые журналы JS показывают, что NGINX пытается перенаправить меня на неправильный порт (8443
):
https://test.example.com:8443/example/
Поскольку единственный открытый порт - это 443
, это не удается. FWIW, он отлично работает при добавлении косой черты (https://test.example.com/example/
)
Есть ли способ заставить NGINX не использовать свой внутренний порт во время перенаправлений, а вместо этого придерживаться порта, используемого клиентом? Вот пример моего блока местоположения:
location /example {
proxy_pass https://example.apps.svc.cluster.local:8443;
}