Tüm bağlantı noktası 80 üzerinde dinleme nginx çalışan birden fazla liman işçisi çalıştırmaya çalışıyorum, ancak farklı bağlantı noktası bağlantı noktaları kapsayıcı bağlantı noktası 80 eşleme ile.
Çoğunlukla bu, nginx'in bir eğik çizgi eksik olması nedeniyle bir yönlendirme yapması dışında çalışır.
server {
listen 80;
root /var/www;
index index.html;
location /docs {}
}
Yukarıdaki nginx yapılandırma ve 8080 konteyner bağlantı noktasına eşlenmiş ana bağlantı noktası 8080 ile çalışan bir docker konteyner göz önüne alındığında localhost alabilirsiniz: 8080 / docs / curl ok yoluyla:
> GET /docs/ HTTP/1.1
> User-Agent: curl/7.35.0
> Host: localhost:8080
> Accept: */*
>
< HTTP/1.1 200 OK
* Server nginx/1.9.5 is not blacklisted
< Server: nginx/1.9.5
< Date: Sat, 28 Nov 2015 17:27:05 GMT
< Content-Type: text/html
< Content-Length: 6431
< Last-Modified: Sat, 28 Nov 2015 17:17:06 GMT
< Connection: keep-alive
< ETag: "5659e192-191f"
< Accept-Ranges: bytes
<
... html page ...
ancak localhost istersem: 8080 / docs localhost / docs /
> GET /docs HTTP/1.1
> User-Agent: curl/7.35.0
> Host: localhost:8080
> Accept: */*
>
< HTTP/1.1 301 Moved Permanently
* Server nginx/1.9.5 is not blacklisted
< Server: nginx/1.9.5
< Date: Sat, 28 Nov 2015 17:29:40 GMT
< Content-Type: text/html
< Content-Length: 184
< Location: http://localhost/docs/
< Connection: keep-alive
<
... html redirect page ...
Yönlendirme yaparken orijinal bağlantı noktasını korumak için nginx'i nasıl alabilirim? Port_in_redirect ve sunucu_adı_in_redirect bakarak denedim ama onlar yardımcı olmadı.
DÜZENLE
Https://forum.nginx.org/read.php?2,261216,261216#msg-261216 temel alınarak bu şu anda mümkün görünmüyor.