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

簡易サーバー(http-serverなど)

一般的にwebアプリを構築する際にはApacheやnginxといったwebサーバーを立てることが多いのですが、ローカルの開発環境で入れるのが面倒で、もっと簡易的にサクッと入れられる仕組みが欲しかったり …

no image

mod_rewriteでの注意点

久々にhtaccessでのmod_rewriteをやりまして少しハマった(忘れていたのでポイントを) このネタではタグつけて結構書いてますね・・ http://skill-up-engineering …

no image

chefのインストール

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

no image

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

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

no image

herokuでのLet’s Encrypt設定

herokuで運用しているアプリでhttps設定(Let’s Encrypt)をしたいという要望があり、調査、設定をすることに。 当然herokuでなくても大丈夫です。 過去に行ったhtt …

アーカイブ