skillup

技術ブログ

サーバー・ネットワーク

locationディレクティブについて

投稿日:2016年12月11日 更新日:

nginxを実務で使うときに重要になってくるlocationディレクティブについて。

ここでは実際のlocationディレクトリとマッチするURLのパターンを見ていきたいと思います。

locationディレクティブ

下記の設定は http://website.com/admin/ に適用されます。

=がつくパターン

= があると完全一致になります。

マッチ
  • http://website.com/abcd
  • http://website.com/ABCD(ただしOSによる)
  • http://website.com/abcd?qr1=6 (クエリがあっても問題はない)
マッチしない
  • http://website.com/abcd/ (スラッシュがあるため完全ではない)
  • http://website.com/abcde(末尾に余計な文字があるためダメ)

 修飾子無し

先頭部分が一致しているものが対象になります。

マッチ
  • http://website.com/abcd
  • http://website.com/ABCD(ただしOSによる)
  • http://website.com/abcd?qr1=6 (クエリがあっても問題はない)
  • http://website.com/abcd/ (スラッシュがあってもよい)
  • http://website.com/abcde(末尾に余計な文字があっても途中まで一致しているのでOK)

~(正規表現)

指定された正規表現とマッチするURIが対象となり、大文字小文字の区別がある

マッチ
  • http://website.com/abcd
  • http://website.com/abcd?qr1=6 (クエリは影響を与えない)
マッチしない
  • http://website.com/ABCD(大文字小文字区別するためNG)
  • http://website.com/abcd/ (末尾のスラッシュがあるため合致しない)
  • http://website.com/abcde(余分な文字が入っているので合致しない)

ちなみに下記のように~*となると大文字小文字を区別しなくなる。

^~(一致終了パターン)

修飾子がないときと同様で違いは合致した瞬間に他のパターンを探さない。

参考文献

Nginx入門

-サーバー・ネットワーク
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

正規表現その2

10/28に書いた正規表現に関しての追記です。 Contents1 覚えておきたいメタ文字2 留意点 覚えておきたいメタ文字 よく出るメタ文字の復習です。 メタ文字 メタ文字の説明 [] いずれかの1 …

no image

AWSのCLIに関して

実務でAWSを使ってたんですがテスト時にはコマンドを使っている方がはるかに早いためコマンドライン環境を作っておいたほうが良いです。 ちなみに使用する前にはAWSのコンソールからIAMユーザーを作成する …

no image

ネットワーク基礎 OSI参照モデルなど

ここ↓でネットワークの基礎についてかいてあるので定期的に勉強しようと思っています。 3分間 NetWorking Contents1 スニーカーネットからリソース共有2 LANとWAN3 OSI参照モ …

no image

docker-composeに関して

dockerで環境構築する場合は基本的に下記のような流れをとると思います。 それぞれの出来合いのイメージをpull イメージに様々なライブラリをインストール それらをコンテナとして起動&連携 …

no image

ファイル抽出系のシェルスクリプト(主にfind系)

実務であるアプリのログをまとめるスクリプトを書きました。 log1.log log2.log log3.log ・・・・ みたいにローテーションして吐かれていくのですが、量が多いので1日分をまとめるこ …

アーカイブ