「Nginx の location の書き方がわからない!」そう思ったことはありませんか?
- ネストするとおかしくなる
- 同じ階層にあるうち一つしか適用されない
- 同じ階層のlocationディレクティブの演算子をすべてチェックしないと、どれが適用されるかわからない
このように、Nginx の locationディレクティブは直感的ではなく、クセのある動作をします。
今回はとてもカンタンで、ファイル分割管理が楽になるやり方をご紹介します。
locationの基礎事項
まずlocationの基礎知識ですが、locationは並列して書かれていた場合、どれか一つのみ適用されます。どれが適用されるかは演算子によります。
「=、^~、~、~*、なし」の順に適用されます。
= | 完全一致 |
^~ | 前方一致 | ~ | case-sensitive*1な正規表現 |
~* | case-insensitive*2な正規表現 |
なし | 前方一致 |
^~と「演算子なし」は正規表現に対する優先順位が異なります。
続きを読む