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

journald

CentOS7では従来のsyslogデーモンと並行してjournaldというログ管理サービスがあります。 Contents1 コマンド一覧2 参考図書・リンク コマンド一覧 [crayon-5b4f0 …

no image

yumのリポジトリについて

CentOSでは様々なパッケージが用意されていますが、標準で使えるもの以外にもさまざまなリポジトリがあります。 Contents1 リポジトリ一覧2 有効、無効や指定してのインストールについて リポジ …

no image

nginxのデバッグ

今までいろいろと苦しめられてきた(汗)nginxのデバッグについて。 まず任意の文字や変数をログに出すことができます。 Contents1 変数の出力1.1 rewriteデバッグ2 小ネタ 変数の出 …

no image

サーバーの過負荷の発見 メモリ使用率の調査&抽出、置換(awk,sed)コマンドについて

前回、サーバーの負荷調査について記事を書いたので、それに関するスクリプトを。 Contents1 仕様2 ソース3 解説3.1 freeコマンド3.2 awk3.3 sed 仕様 日付とメモリ使用率、 …

no image

CentOS7でのIP固定

日ごろ業務ではwindowsにVitrtualBox+VagrantにCentOSをいれていたのですが、スペックにややネックがあったため、今は使っていないPCにCentOS7を入れて開発企図して使うこ …