Я пытаюсь настроить nginx для прокси к экземпляру док-станции cadvisor, работающему на хост-порту 8000.
У меня есть следующая конфигурация:
upstream cadvisor {
server 127.0.0.1:8000;
}
...
...
server {
...
...
location /cadvisor {
rewrite ^([^.]*[^/])$ $1/ permanent;
rewrite ^/cadvisor$ /cadvisor/ permanent;
rewrite ^/cadvisor(/.*) $1 break;
auth_basic "Restricted"; #For Basic Auth
auth_basic_user_file /etc/nginx/.htpasswd; #For Basic Auth
proxy_pass http://cadvisor;
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 https;
proxy_redirect ~^/(.*)/ /cadvisor/$1;
}
...
...
}
Это работает для всех URL-адресов, кроме следующих (которые являются одним из ссылок, создаваемых cadvisor):https://myserver.com/cadvisor/containers//docker/a11c7edcc131d92c6ec3476329e5a54c82d2c31ee3f5592ba3fcb9386cb4f06a
Вероятно, это связано с тем, что двойная косая черта перед «докером» в URL портит путь CSS. Моя проблема была бы решена, если бы я мог перенаправить эти URL-адреса в URL-адрес с одной косой чертой (т.е. https://myserver.com/cadvisor/containers/docker/a11c7edcc131d92c6ec3476329e5a54c82d2c31ee3f5592ba3fcb9386cb4f06a)
Есть ли способ перенаправить URL на одну версию с косой чертой?