ホームページ >バックエンド開発 >PHPチュートリアル >NginxでのLocationの設定方法
この記事では主に Nginx での Location の設定方法を紹介します。ある参考値があります。今、共有します。困っている友達は参考にしてください。
があります。今日の人 クラスメートが Nginx サイトのマルチパス マッチングについて質問しました。
1.www.domain.com/a
は/var/www/domain.com/a/index.html
2 を返す必要があります.www.domain.com/b
を返す必要があります/var/www/domain.com/b/index.html
Nginx を有効に設定するにはどうすればよいですか?
この問題を解決するには、まず Nginx の位置ディレクティブを直接使用して解決しますが、答えを与える前に、まず Nginx の位置ディレクティブの基本を理解しましょう。
Nginx 構成ファイルでは、通常、よく使用される 2 つのブロック (Block) が設定に使用されます。
1.サーバー領域ブロック
2 .Localtion Block
ここでのブロックとは Block のことで、次の {}
のペアの間の設定内容と理解することもできます。
サーバー ブロックは主に、ドメイン名、IP、ポート、ホストのその他の内容の構成など、実際のホストの構成です。もちろん、Nginx 構成ファイルでは、複数の Sever ブロックの構成を指定できます。
Location ブロックは Sever ブロック内にあり、さまざまなパスとリクエストの構成にさらに分割されます。通常、サイトには多くの URI があるため、Location ブロック設定に複数の Location 構成を記述することもできます。
最初に場所設定の基本的な構文を見てみましょう:
location optional_modifier location_match { # 这个 {} 里面的配置内容就是一个区块 Block }
上記の optional_modifier
設定項目では正規表現を使用できます。一般的に使用されるものは次のとおりです。
は空白のままにします。はい、空白のままにすることも設定方法です。空白のままにすると、構成はリクエスト パスが
location_match
で始まることを示します。
=
と同様に、等号は非常に理解しやすいものです。リクエスト パスは、次の location_match
の値とまったく同じです。最初の項目を残す 空であることにはまだ違いがあります。
~
、浮動小数点数 (英語で入力された浮動小数点であることに注意してください) は、大文字と小文字を区別する正規の一致を示します。
~*
は、大文字と小文字を区別しない正規の一致を表します。
#^~ は、ここでは通常の一致が発生しないことが予想されることを意味します。
プレフィックス を照合します (つまり、場所のOptional_modifier が空の構成)。
= である設定) を検索します。
^~ 設定を一致させます。設定が見つかった場合は、検索プロセスが停止され、応答コンテンツが返されます。直接。
location = / { # = 等号配置符,只匹配 / 这个路由 }
location /data { # 留空配置,会匹配有 /data 开始的路由,后续有匹配会往下匹配。 }
location ^~ /img/ { # 注意 ^~ 配置,这里匹配到 /img/ 开始的话,直接就返回了。 }
location ~* .(png|gif|ico|jpg|jpeg)$ { # 匹配以 png, gif, ico, jpg or jpeg 结尾的请求;这个通常用来设置图片的请求响应。 }
2 つの非常に実用的な例:
1. 単純なイメージのホットリンク防止location ~ .(png|gif|jpe?g)$ { valid_referers none blocked yourwebsite.com *.yourwebsite.com; # 注意上面写上你的域名就好 if ($invalid_referer) { return 403; } }2.書き込み可能なパス、
php または
js ステップの実行を禁止します
location ~* /(media|images|cache|tmp|logs)/.*.(php|jsp|pl|py|asp|cgi|sh)$ { return 403; }質問の答え最後に、質問の答えを見てみましょうこれは次のようになります:
location /a { root /var/www/domain.com/a; } location /b { root /var/www/domain.com/b; }上記はこの記事の全内容です。皆様の学習に役立つことを願っています。その他の関連コンテンツについては、PHP 中国語に注目してください。 Webサイト! 関連する推奨事項:
nginx を使用して 1 台のサーバーに複数の Web サーバーをデプロイする
以上がNginxでのLocationの設定方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。