Задача - отбросить все запросы по конкретному урлу.
url следующий - "/blablabla/bla?x=55&y=="
Вроде всё просто, создаю локейшн и deny all:
location = /blablabla/bla?x=55&y== {deny all;}
Далее проверяю курлом:
curl -I '
localhost/blablabla/bla?x=55&y=='
Получаю 404, хотя должен получать 403.
Также если вместо deny all поставить return 200 - всё равно получаю 404.
Знаю, что можно сделать так:
location ~ /blablabla/bla {
if ( $args ~ ^x=55&y== ) { return 403; }
}
Но при высоких нагрузках условный оператор может отнимать много CPU.
Может я в синтаксисе ошибаюсь?
Или единственный вариант - второй метод?
Спасибо за помощь.