Необходимо добавить «^ ~», чтобы придать этому совпадению более высокий приоритет, чем у блоков местоположения регулярных выражений.
location ^~ /test/ {
return 404;
}
В противном случае вы окажетесь в сложной ситуации.Например, если у вас есть другой блок местоположения, такой как
location ~ \.php$ {
...
}
, и кто-то отправляет запрос на http://your_domain.com/test/bad.php,, этот блок местоположения регулярного выражения будет выбран nginx для обслуживания запроса.Очевидно, это не то, что вы хотите.Поэтому обязательно поставьте «^ ~» в этот блок локаций!
Ссылка: http://wiki.nginx.org/HttpCoreModule#location