Проблема:
proxy_pass
директива для перенаправления https
запросы с конкретным location
путь в URI, например, https://domain/path/index.html
к http://container_ip:port/index.html
.https://domain/main.css
.Вопрос:
Как мне настроить nginx так, чтобы такие ресурсы также искались по исходному пути; в примере на https://domain/path/main.css
?
Текущая неправильная конфигурация nginx:
server {
listen 443 ssl;
server_name domain;
[...]
location /path/ {
proxy_set_header Host $host;
proxy_pass http://container_ip:port/;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
Пути к ресурсам генерируются вашим приложением. Правильный и надежный подход - исправить ваше приложение для создания URL-адресов ресурсов с правильными путями.
Если вам нужно ненадежное решение, вы можете попробовать использовать http://nginx.org/en/docs/http/ngx_http_sub_module.html для замены URL-адресов ресурсов в ответах, которые прокси-сервер nginx. Однако есть вероятность нежелательных побочных эффектов, которые сложно диагностировать.