Nginx - proxy_passパスの一意の接合規則
1587 ワード
現在、Nginxは主に逆エージェントとして使用されているが、最近
重要な法則.
いくつかの文章を見て、まとめたルール
多様な状況検証
仮定要求:http://localhost/online/wxapi/test/loginSwitch
第一のケース
エージェント後の実際のアドレス:http://localhost:8080/test/loginSwitch
2つ目のケース
エージェント後の実際のアドレス:http://localhost:8080/online/wxapi/test/loginSwitch
3つ目のケース
エージェント後の実際のアドレス:http://localhost:8080/webtest/loginSwitch
注意:接合の残りの部分なので、パスには
第四のケース
エージェント後の実際のアドレス:http://localhost:8080/web/test/loginSwitch
リファレンス nginx proxy_pass転送パス
proxy_pass
を構成する際にいくつかの問題に遭遇したことがある.実験後、多くの複雑なルールの背後には本質的に1つのルールしかないことが分かった.重要な法則.
いくつかの文章を見て、まとめたルール
proxy_pass
の後にURLパス情報(例えば/
/xxx
など)がない場合、リバースエージェントのアドレスにはlocation
のマッチング部分が含まれます.そうしないと、マッチング後の残りのパスPS:上が最も重要で唯一のルールです.覚えておいてください.多様な状況検証
仮定要求:http://localhost/online/wxapi/test/loginSwitch
第一のケース
proxy_pass
の末尾には/
がありますlocation /online/wxapi/ {
proxy_pass http://localhost:8080/;
proxy_set_header X-Real-IP $remote_addr;
}
エージェント後の実際のアドレス:http://localhost:8080/test/loginSwitch
2つ目のケース
proxy_pass
最後に/
はありませんでしたlocation /online/wxapi/ {
proxy_pass http://localhost:8080;
proxy_set_header X-Real-IP $remote_addr;
}
エージェント後の実際のアドレス:http://localhost:8080/online/wxapi/test/loginSwitch
3つ目のケース
proxy_pass
最後に/web
location /online/wxapi/ {
proxy_pass http://localhost:8080/web;
proxy_set_header X-Real-IP $remote_addr;
}
エージェント後の実際のアドレス:http://localhost:8080/webtest/loginSwitch
注意:接合の残りの部分なので、パスには
webtest
などの単一語の接合がある可能性があります.第四のケース
proxy_pass
最後に/web/
location /online/wxapi/ {
proxy_pass http://localhost:8080/web/;
proxy_set_header X-Real-IP $remote_addr;
}
エージェント後の実際のアドレス:http://localhost:8080/web/test/loginSwitch
リファレンス