nginxのサーバーブロックマッチングシーケンス

     クライアントがHTTP要求を送信すると、サーバは、要求ブロックを処理するためにその端部で決定された順序で各サーバーserver_nameのnginx.confと一致するヘッダnginxのヘッドホストを受信した後に除去されます。

ホスト優先順位を持つサーバー名が一致します:

マッチングは、優先順位になります
1、完全一致
図2に示すように、フロントワイルドカードなど* .xxxx.com
3、後に、そのような AAA。BBB。*
4、通常のマッチング、〜^ \など。AAAA \ .bbb \ .COM $
ケースが一致しない場合、次のように、次の2つの方法での処理は、優先順位は次のとおりです。
1、有利なデフォルトの設定項目やDEFAULT_SERVERに耳を傾けます
2、最初のブロックマッチングサーバがリスンポートを見つけます
 
備考:
図1に示すように、nginxのDEFAULT_SERVER明示的に最初のサーバによって定義され、定義されていない場合は、任意のサーバ名と一致しない要求に対処するために、デフォルトのサーバを定義することができる命令のDEFAULT_SERVERとして選択されます。
2、場所の構文規則: location [=|~|~*|^~] /uri/ { … }

= これは、完全一致の始まりを表し、

^~ URIは、従来から始まる文字列の先頭を表し、URLと一致する経路として理解

~ これは、大文字と小文字を区別し、通常の試合を表し

~* 大文字と小文字を区別しない正規の一致を示します

!~そして、!~*大文字と小文字が区別され、大文字と小文字を区別しないマッチは定期的に一致していませんされていません

/ 一般的な一致は、任意の要求が一致しています。

するマッチングルール場合^で始まり、文字列の先頭が指定されたパスに一致しているマッチはURL内のコンテンツでない場合は、指定した文字列が含まれています

マッチングルール場合$端は、パスの末尾に指定した文字列と一致することです

:一致する位置に複数の順序(成功したマッチがある場合、マッチングは、現在の処理要求マッチングルールに従って、停止される時間)に配置する場合

  1. 優先順位の一致 =
  2. 次の試合 ^~
  3. ファイルを一致させるために行われ
  4. 最後の試合 /

おすすめ

転載: www.cnblogs.com/xuzhujack/p/12343480.html