Я не знаю то, что веб-сайт "среднего размера" для Вас. Но если это является достаточно большим, чтобы иметь DB и веб-сервер на двух различных серверах затем, Вы могли использовать брандмауэр базы данных как, например, GreenSQL. Это даст Вам еще некоторую информацию, как они хотят сделать это. Но Вам все еще будет нужен журнал http анализатор для обнаружения, где они нападают (Что формируется, они пытаются неправильно использовать).
location /test/ { error_page 404 = /webdir/page.php; return 404; }