десятки тысяч подобных запросов, ип/реферер/юа разные, но отличает их примерно одинаковый путь запроса "/last-news/tver/?РАНДОМ". При этом /last-news/tver/ и /last-news/tver/РНАДОМ является легитимными запросами. Не могу понять, как правильно отловить вопросительный знак. Т.е. вроде как-то так должно быть, но не так if ($uri ~* "/last-news/tver/\?$") { return 444; } Беглый гугл мне не помог
Строка запроса не является частью переменной $uri. Полный запрос хранится в $request_uri. Можешь попробовать так: if ($request_uri ~ ^/news/tver/\?) { return 444; }
попробовал, не попадает /last-news/tver/?C9zIwbOUwQY6dC6H5q5p
На всякий случай даже попробовал у себя, всё попадает. Может быть if не там находится, или перед ним стоит какой-нибудь rewrite ... break (или просто break).
сча ещё раз проверю
Обсуждают сегодня