8
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

はじめに

nginxのlocationの設定でつまづくことがあったので、まとめる。
気付いた点があれば都度更新。

基本

URIのパス毎の設定を記述できる。
基本的には下記の形で記述できる。

location プレフィックス URIのパス {
  # パスでの設定
}

プレフィックスの種類

プレフィックスというものでパスの評価形式を指定できる。
下記テーブルの上から記述された順番で優先度が高く、
nginxのlocationの設定は優先度が最も高い設定が一つだけ適用される。

プレフィックス 説明
= 完全一致
^~ 前方一致。一致したら正規表現を適用しない。
~ 正規表現(大文字・小文字を区別する)
~* 正規表現(大文字・小文字を区別しない)
なし 前方一致

前方一致の記述が複数ある場合は、一致する文字列が一番長いものが適用される。
正規表現の記述が複数ある場合は、設定ファイルに書いた順番で最初に一致したものが適用される。

よく使いそうな正規表現

トレイリングスラッシュ有無の統一

location ~ ^/(.*)/$ {
  return 301 path # トレイリングスラッシュを消す
}

拡張子の排除

location ~ \.拡張子$ {
  # 設定を記述
}

参考

nginxの設定、その3 - locationディレクティブ
Nginx を導入する

8
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?