Любой, кто подключает сервер NGINX к сети и смотрит на его доступ.log
через неделю будет предпринято множество попыток эксплойтов URL. Каждый день, в любое время.
Так что, если бы я должен был отклонить все параметры URL-адреса. Что, если бы каждая строка запроса была замаскирована с помощью NGINX? переписать
который не сможет соответствовать чему-либо, не определенному как переписать
естественно возвращая 404 Not Found?
Или серию переписываний по порядку, размещенных внутри этого всегда присутствующего блока локации?
место расположения / {
переписать "^/api/v1/users/?$" /api/v1/Users.php последним;
переписать "^/api/v1/users/(all|active|inactive)?$" /api/v1/Users.php?status=$1 last;
переписать "^/api/v1/users/(\d+)/?$" /api/v1/Users.php?userId=$1 последним;
}
# Примеры соответствия URL...
http://локальный/апи/v1/пользователи
http://локальный/апи/v1/пользователи/
http://локальный/апи/v1/пользователи/все
http://локальный/апи/v1/пользователи/активный
http://localhost/api/v1/users/неактивный
http://локальный/апи/v1/пользователи/2001
http://локальный/апи/v1/пользователи/2002
http://локальный/апи/v1/пользователи/2003
Есть ли способ заставить NGINX игнорировать параметры URL? Не стесняйтесь, дайте мне знать, если это наивный вопрос. Возможно, я задаю неправильный вопрос.