nginx はリバース プロキシ サーバーとして簡単に構成できます:
server { listen 80; server_name localhost; location / { proxy_pass http://x.x.x.x:9500; proxy_set_header host $host:80; proxy_set_header x-real-ip $remote_addr; proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for; proxy_set_header via "nginx"; } }
ただし、nginx のリスニング ポートがデフォルトのポート 80 ではない場合は、ポート 81 などの別のポートに変更します。
バックエンド サーバーの request.getserverport() は正しいポートを取得できず、戻り値は 80 のままです;
response.sendredirect() に応答するとき、クライアントは正しいリダイレクト URL を取得できない可能性があります。
正しい構成方法を詳しく見てみましょう:
nginx 仮想ホストの追加
Do nginx For転送には、もちろん nginx を設定する必要があります。 nginx の機能は、仮想ホスト構成を追加することで強化できます。まず、nginx 設定ファイルを見てください。作者の nginx ファイルは /etc/nginx/nginx.conf にあります。上の図からわかるように、nginx は最後に vhosts.d ディレクトリに構成ファイルを導入します。次に、.conf サフィックスを持つファイルを /etc/nginx/vhosts.d ディレクトリに作成する必要があります (ディレクトリが存在しない場合は、自分で作成する必要があります)。
nginx は 80 ポート以外の転送を行います
転送するには、nginx の proxy_pass 設定項目を使用できます。 nginx はポート 80 をリッスンし、リクエストを受信すると、転送先の URL にリクエストを転送します。具体的な構成は次のとおりです。
server { server_name www.test.com listen 80; location / { proxy_pass http://127.0.0.1:8080; } }
はい、とても簡単です。これはポート転送設定の核心です。
ただし、ビジネスで実際の IP を取得する必要がある場合は、実際の IP に関する設定も追加する必要があります。
server { server_name www.test.com listen 80; location / { proxy_pass http://127.0.0.1:8080; proxy_set_header host $host:80; proxy_set_header x-real-ip $remote_addr; proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for; } }
proxy_set_header この設定は、http リクエスト ヘッダーを変更するためのものです。 Host はリクエストのホスト名、x-real-ip はリクエストの実 IP、x-forwarded-for はリクエストを開始したユーザーを示します。
以上がNginxサーバーで80以外のポートのポート転送を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。