Я запускаю nginx в докере, чтобы действовать как обратный прокси для нескольких приложений. например,
http://localhost/eureka/ will show http://registry:8761
http://localhost/zipkin/ will show http://zipkin:9411
Я начал с конфигурирования nginx,
http {
server {
location /eureka/ {
proxy_pass http://registry:9761;
}
}
}
Вышеупомянутая конфигурация не работает, и nginx выдает ошибку как,
proxy | 172.20.0.1 - - [24/Mar/2017:10:46:28 +0000] "GET /eureka/ HTTP/1.1" 404 0 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36"
Но приведенная ниже конфигурация работает для http://localhost/ с отображением страницы эврики.
http {
server {
location / {
proxy_pass http://registry:9761;
}
}
}
Что мне не хватает? Согласно nginx proxy_pass, он должен работать, но это не так.
/eureka/
вregistry:9761
, а другое передает/
. Вам нужно изменить URI, прежде чем он будет передан вверх по течению? - person Richard Smith   schedule 24.03.2017