Nginx を www.example.com に応答させることができます。ただし、www.example.com/site0 を特定のサーバーにリダイレクトし、www.example.com/site1 を別のサーバーにリダイレクトしたいと思います。ルートの場所 www.example.com を指定すると機能します。
しかし、Nginxにwww.example.com/site0を特定のサーバーに解決させることはできません
私の設定は次のとおりです:
server {
listen 80;
server_name www.example.com localhost;
location /site0/ {
proxy_pass http://0.0.0.0:5000;
proxy_set_header Host $host;
}
}
www.example.com/site0/にアクセスしようとしています
192.168.0.254 - - [14/Mar/2018:21:13:28 +0100] "GET /site0 HTTP/1.1" 301 185 "-" "curl/7.54.0"
192.168.0.254 - - [14/Mar/2018:21:13:31 +0100] "GET /site0/ HTTP/1.1" 404 233 "-" "curl/7.54.0"
なぜこれが機能しないのか分かりません。サーバーを構成するために次の例を使用しています: https://gist.github.com/soheilhy/8b94347ff8336d971ad0
編集:( エラーは次のとおりです:
proxy_pass http://0.0.0.0:5000/;
ターゲット URL の末尾のスラッシュに注意してください。これが場所 '/' にとって重要でない理由はわかりません。
答え1
かなり大きな違いがあります
proxy_pass http://0.0.0.0:5000;
そして
proxy_pass http://127.0.0.1:5000;