Nginxがパターンに一致するリクエストを受け取ったときに404コードを返すようにしたい、例えば/test/*
。それを行うためにnginxを設定するにはどうすればよいですか?
location /test/ {
return 404;
}
このマッチに正規表現ロケーションブロックより高い優先度を与えるには、「^〜」を追加する必要があります。
location ^~ /test/ {
return 404;
}
それ以外の場合は、いくつかのトリッキーな状況になります。たとえば、次のような別のロケーションブロックがある場合
location ~ \.php$ {
...
}
誰かが http://your_domain.com/test/bad.php にリクエストを送信すると、その正規表現の場所のブロックはリクエストを処理するためにnginxによって選択されます。明らかにそれはあなたが望むものではありません。そのため、必ずその場所ブロックに「^〜」を入れてください!
location ^~ /test/ {
internal;
}