1. はじめに ロケーション命令は、http モジュールのコア構成です。事前に定義された URL マッチング ルールに従って、ユーザーから送信されたリクエストを受信します。マッチング結果に応じて、リクエストをバックグラウンド サーバーに転送し、不正なリクエストを直接拒否し、403、404、500 エラー処理などを返します。 2. 場所コマンドの構文 location [=|~|~*|^~|@] /uri/ { … } または location @name { … } 3. URIマッチングパターン 場所ディレクティブは、次の 2 つの一致モードに分かれています。 4. ロケーションURIのマッチングルール nginx はリクエストを受信すると、リクエストの URI 部分をインターセプトし、すべてのロケーション指示で定義されている URI 一致パターンを検索します。サーバー モジュールでは、さまざまなロケーション構成のさまざまな URL 要求と URI 一致パターンに一致するように、複数のロケーション指示を定義できます。全体的な一致の原則は、まず共通の文字列パターンに一致し、次に通常のパターンに一致します。 URI 部分のみを認識します。たとえば、リクエストは次のようになります: /test/abc/user.do?name=xxxx リクエストが届くと、Nginx がこのリクエストを照合するプロセスは次のようになります。 1> まず、次のように = で始まる完全一致があるかどうかを確認します: location = /test/abc/user.do { … } 2> 最大のプレフィックスの原則に基づいて、通常の一致を再度検索します。次の2つの場所がある場合は、後者が一致します。 3> 共通パターンに一致した後、検索は終了せず、現在の一致結果が一時的に保存され、通常の一致パターンの検索が継続されます。 4> すべての通常のマッチングパターンが位置で最初のマッチング項目を見つけた後、この項目が最終的なマッチング結果として使用されます。したがって、通常のマッチング項目のマッチングルールは定義の順序の影響を受けますが、通常のマッチングパターンは影響を受けません。 5> 正規の一致が見つからない場合は、ステップ3でキャッシュされた結果が最終的な一致結果として使用されます。 5. 完全一致とあいまい一致の違い 6. 規則的なマッチングと不規則なマッチング 1> location ~ /test/.+.jsp$ { … }: 標準の正規表現構文をサポートする正規一致。 ... http { ... サーバー{ 聞く 80; server_name ローカルホスト; 位置 / { ルートhtml; インデックス index.html index.htm; # すべてを拒否します。リクエストを拒否し、403 を返します。 # すべて許可; リクエストを許可} 場所 /abc { すべてを否定する; } 場所 ~ /.+\.jsp$ { proxy_pass http://location:9090; } # /test パスの場所にあるすべての jsp ファイルに一致します ~ /test/.+\.jsp$ { proxy_pass http://localhost:8080; } # さまざまなエラーページを定義します error_page 404 /404.html エラーページ 500 502 503 504 /50x.html; 場所 = /50x.html { ルートhtml; } # @変数定義と同様# error_page 403 http://blog.csdn.net; #この定義は許可されておらず、実装するには@を使用して一時変数を定義する必要があります error_page 403 @page403; 場所 @page403 { proxy_pass http://blog.csdn.net; } } } 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL 5.7.20 Green Edition のインストールの詳細なグラフィックチュートリアル
>>: Vueは適切なスライドアウトレイヤーアニメーションを実装します
この記事では、mysqld プロセスをシャットダウンするプロセスと、MySQL インスタンスを安全か...
Web アプリケーションの開発とデバッグを行う際には、テストのためにブラウザのキャッシュをクリアした...
Dockerネットワークを見るdocker ネットワーク ls [root@master ~]# d...
Tomcat のデフォルトのログは java.util.logging を使用しますが、これにはい...
この記事では、参考までにVue More Filter Itemウィジェットの実装方法を例として紹介...
目次実験環境インストールと展開データベースをインストールして設定します (ここでは mariadb ...
MySql での時間比較の実装unix_timestamp() unix_timestamp 関数は...
DataGrid コントロールの DataSource プロパティがデザイン時に設定されている場合、...
目次1. Dockerイメージ2. 既存のイメージに基づいてインスタンスを作成する3. ローカルテン...
導入現在、k8s は非常に人気があり、それについて学ぶために本を購入しました。しかし、k8s では数...
一般的な基本グラフィックと私が遭遇するいくつかの小さなアイコンについて簡単に説明します。以下は CS...
1. MySQLを削除する a. sudo apt-get autoremove --purge m...
目次序文SVGを生成するSVGスプライトの紹介プロジェクトアイコンを取得するプロジェクトのセットアッ...
mysqldump ツールのバックアップデータベース全体をバックアップする $> mysqld...
ログインインターフェースの解像度が特に大きい場合、グラフィカルインターフェース全体が特に大きくなり、...