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 文字セットの変更に関する実践的なチュートリアル
Tomcat は Web コンテナとして広く知られています。Java を学び始めたときから現在の仕事...
viteを使用してvue3プロジェクトを構築するターミナルで次のコマンドを実行すると、Vite を使...
目次1. 基本的な使い方とロジック2. 特徴3. エラーオブジェクト4. キャッチアンドスロー戦略の...
次のコマンドを実行します: glxinfo | grep レンダリング結果が「はい」の場合、グラフィ...
目次1. はじめに2. スケジューラの基本概念2.1. 実行キュー (rq) 2.2 スケジューリン...
今日ご紹介したいのは、ネイティブ JS を使用してプログレス バーをドラッグし、要素の透明度を変更す...
目次変数意味があり発音しやすい変数名を使用する同じ型の変数には同じ語彙を使用する検索可能な名前を使用...
この記事では主に、クーポンの背景画像などでよく使われる CSS 円形ホローイングについて紹介し、皆さ...
MySQL proxies_priv(シミュレートされたロール)を使用して同様のユーザーグループ管理...
サーバーの LNPM 環境をインストールして構成する場合、複数のバージョンの PHP の共存を考慮す...
問題の説明1. 収集ステーションのデータベース2. データが無い状態での移動は問題ありませんが、デー...
1. OpenSSL公式サイト公式ダウンロードアドレス: https://www.openssl....
いわゆるスライディングドアテクノロジーとは、さまざまな長さのテキストに合わせてボックスの背景を自動的...
目次文章LOCKパラメータアルゴリズムパラメータCOPY TABLE プロセスIN-PLACEプロセ...
<br />私は数年間フロントエンドに取り組んできました。フロントエンドについて完全に理...