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

POP3を使ったメール受信

メールの送信と比べると、プログラムで描く頻度は少ないですが、メールの受信について。 Contents1 POP3サーバー2 プログラムにてPOP3サーバーと通信3 PHPにてメールを取得する場合 PO …

no image

scpコマンドを使ったサーバー間のファイルのやり取り

あるサーバーのファイルを別サーバーにコピーするとき、大昔はFTPを使っていましたが、現在FTPサーバー自体を立てることがあまりないため、SSHを使ったSCPコマンドでのファイル点を使いました。 Con …

no image

シェルスクリプトテキストファイルから配列&プロセス監視シェル

またまたシェルスクリプトネタなどを。 今回はtxtファイルの文字列を読み込んで配列に入れる処理ですね。 例えば aaa bbb ccc こんな文字列がテキストファイルに格納されていたとして、これを配列 …

no image

sourceコマンドに関して(Linuxサーバー&MySQL)

Linux上ではコマンドをテキストファイルに記述して、

と入力すると命令を実行してくれます。 シェルスクリプトよりもお手軽に実行できる …

no image

chefのインストール

以前からずっと課題になっていたchefのインストールについてです。 まだ全然わかっていませんが、なんとかvagrantからのインストールをすることができましたのでメモします。 chefでの環境構築とい …