nginx の設定後に転送が有効にならない落とし穴の個人的なまとめ

I. 概要

nginx の構成ルールはまだ少し複雑です. ここでは、私が遭遇した落とし穴と解決策のみを要約します. 具体的な理由は明らかではありません.

2. 構成後に有効にならないピット

1. まず、アクセスするサンプル URL は次のとおりです。

http://10.123.123.123:8080/b/c/getInfo
		 
http://10.123.123.123:8080/a/b/c/getMsg

nginx で構成されたルールは次のとおりです。

        location /b/c/ {
          proxy_set_header Host $host;
          proxy_set_header Connection close;
          proxy_pass http://10.124.124.124:8089/api/other_Systems/;
         }

2. この時点で、以下にアクセスしてください。

http://10.123.123.123:8080/b/c/getInfo

nginx の設定に従って、次の場所に転送されます。

http://10.124.124.124:8089/api/other_Systems/getInfo

これは問題ありません。

3.ただし、次の場所にアクセスしてください。

http://10.123.123.123:8080/a/b/c/getMsg

次の場所にも転送できると思いました。

http://10.124.124.124:8089/api/other_Systems/getMsg

結果はそうではありません。アクセスはまだhttp://10.123.123.123:8080/a/b/c/getMsgルールに従って転送されていません。

3. ソリューション

1.nginx は次のように構成する必要があります。

        location /b/c/ {
          proxy_set_header Host $host;
          proxy_set_header Connection close;
          proxy_pass http://10.124.124.124:8089/api/other_Systems/;
         }
         
        location /a/b/c/ {
          proxy_set_header Host $host;
          proxy_set_header Connection close;
          proxy_pass http://10.124.124.124:8089/api/other_Systems/;
         }

このようにして、次のように言えます。

http://10.123.123.123:8080/a/b/c/getMsg

先へ:

http://10.124.124.124:8089/api/other_Systems/getMsg

4.あとがき

1. nginx 構成ファイルを変更した後、nginx スタートアップ ファイルを見つけるには、コマンドを使用して再起動します。sudo ./nginx -s reloadこれを忘れないでください。

2. 転送ルールを 1 つしか設定できないのに 2 つしか設定できない理由が明確でない理由. 理由は明確ではありません. 最初に解決策を要約させてください.

おすすめ

転載: blog.csdn.net/BHSZZY/article/details/129517606