1. proxy_pass を設定した後に Nginx が 404 を返す問題のトラブルシューティングと特定1.1. 問題複数の転送を伴う本番構成では、要件は次の図のようになります。 1.2. 問題の原因を見つけるデフォルトのNginx proxy_set_header ホスト $host;
この設定を使用すると、Nginxの第1層(Nginx1)がプロキシしているときに、要求するドメイン名はwww.djx.comで、この要求のヘッダーから取得されるホスト値は proxy_set_header ホスト $host; ホスト値は転送された Host 値に設定されていますが、要求されたドメイン名は 1.3. proxy_set_header 公式情報公式ドキュメント デフォルト設定は proxy_set_header ホスト $proxy_host; proxy_set_header 接続を閉じる; 1.4 解決策 Host の値は proxy_set_header ホスト $proxy_host; 2. 共通構成の拡張1. $プロキシホストproxy_set_header ホスト $proxy_host; #デフォルト構成# 名前が示すように、リクエスト ヘッダーはプロキシの背後にあるドメイン名に設定されます。 例1: アップストリームオープン-hz8443{ サーバー 10.60.6.184:8000 max_fails=1 fail_timeout=3s weight=10; } ここでの $proxy_host の値は open-hz8443 です。 例2: 場所 ^~ /wss/v1 { プロキシパス http://10.60.6.184:8000; proxy_set_header ホスト $proxy_host; proxy_set_header 接続「アップグレード」; proxy_set_header アップグレード $http_upgrade; tcp_nodelay オン; } 2. $ホストproxy_set_header ホスト $host; # フィールドがリクエスト ヘッダーにない場合は渡すことができません。この場合、Host 変数を設定することで、Host 変数に値を割り当てることができます。 リクエスト ヘッダーに Host 値がない場合、server_name の値が直接使用され、それを埋めます。 リクエスト ヘッダー内の Host 値が受信されると、リクエスト ヘッダー内の Host 値が直接使用されます。 3. $ホスト:$プロキシポート proxy_set_header ホスト $host:$proxy_port; # サーバー名とポートはプロキシサーバーを介して一緒に渡されます。前の項目と比較すると、追加の $proxy_port があります。この $proxy_port は proxy_pass のポートです。ポートがない場合は、80 や 443 などです。 80/443 充填も使用します。 例: proxy_pass http://www.baidu.com; $host:$proxy_port = Baidu ip:80 4. $http_hostproxy_set_header ホスト $http_host; # 変更されない「Host」リクエスト ヘッダー フィールドは、次のように渡すことができます。 リクエスト ヘッダーに Host 値がない場合、server_name の値が直接使用され、それを埋めます。そしてポートを追加します。 80/443 の場合は追加しないでください。 実際には、URL 内の値を要求します。 リクエスト ヘッダー内の Host 値が受信されると、リクエスト ヘッダー内の Host 値が直接使用されます。 例
基本設定 サーバ{ 聞く 80; サーバー名 www.djx.com; 位置 / { proxy_pass http://www.baidu.com/; } } 192.168.1.190 nginx2 サーバ{ 聞く 80; サーバー名 www.baidu.com; 位置 / { プロキシパス http://192.168.1.80:8080/; } } ** 基本設定の使用 ** proxy_set_header ホスト $proxy_host; すると、http://192.168.1.80:8080/ へのヘッダーの値は www.baidu.com になります。 ** $host を使用する ** proxy_set_header ホスト $host; 参考記事: https://cloud.tencent.com/developer/article/1557504 Nginx 構成 proxy_pass 後の 404 エラーに関するこの記事はこれで終わりです。Nginx 構成 proxy_pass に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: HTML フォームタグチュートリアル (5): テキストフィールドタグ
>>: MySQL 文字セットの変更に関する実践的なチュートリアル
キーペアの分離1 つ以上の Linux インスタンスから SSH キー ペアのバインドを解除します。...
Docker はますます成熟し、その機能もますます強力になっています。 Docker Stack を...
MySQL 全文検索中国語ソリューション最近、会社のプロジェクトで、データベースで中国語を検索する機...
目次序文背景実施計画の考え方js ストレージ機能ソリューション設計やっと要約する序文どの SaaS ...
コードをコピーコードは次のとおりです。 <iframe id="myFrameId&...
構造化テーブル (IExplore のみ) 1) 行ごとにグループ化<thead> .....
方法1:リスピンを使用するには、次の手順に従ってください。 sudo add-apt-reposit...
現在、ますます多くのフロントエンド開発者が、元のテーブル レイアウトを xHTML + CSS に置...
ページで CSS を使用する主な方法は、スタイル属性値をインラインで追加する方法、ページ ヘッダーで...
MySql 自動切り捨て例の詳細な説明友人が質問しました。プロジェクト内で挿入または更新ステートメン...
最近、実践的なトレーニング プロジェクトを実行する際に ssm フレームワークを使用しました。プロジ...
1 ユーザーを作成し、ユーザーのルートパスとパスワードを指定します useradd -d /home...
通常、Java の学習とプロジェクトのデプロイはローカルで行われますが、実稼働環境は Linux 環...
注意:仮想マシンのメモリは2G以上が推奨され、 Alibaba Cloudのアクセラレーションイメー...
1. ダウンロードリンクをダウンロードするダウンロードをクリックします。Oracle アカウントにロ...