Ограничение доступа к конкретной странице

Аватар пользователя kurl kurl 20 мая в 14:26

Коллеги, подскажите, пожалуйста, как можно бороться со следующей ситуацией:
- к одной конкретной странице сайта идёт постоянное обращение с разных ip. Сайт (drupal7) перестаёт работать т.к. память и cpu кончается

Комментарии

Аватар пользователя EvgenySorokin EvgenySorokin 20 мая в 14:58

Вариантов можно придумать много:

блокировать доступ по странам ко всему сайту
блокировать к одной странице доступ по странам (если целенаправленные запросы, то ничего не мешает им на другую страницу переключиться)
удалить страницу
сделать редирект
закешировать страницу, чтобы к базе не было обращений
антиддос-сервис использовать

Аватар пользователя kurl kurl 20 мая в 15:29

в том-то и дело, что ip разные и страны разные - тут маску не придумать.
можно ли удалить страницу ***.ru/ru/node (к этой странице все обращения)
как можно заблокировать доступ к одной странице по url или редирект с неё сделать (и куда)?

Аватар пользователя marassa marassa 20 мая в 18:04

kurl wrote: можно ли удалить страницу ***.ru/ru/node (к этой странице все обращения)

Удаление страницы не приведет к исчезновению запросов к этой странице.

kurl wrote: как можно заблокировать доступ к одной странице по url

Лучше всего в .htaccess добавить что-нибудь типа:
RewriteCond %{REQUEST_URI} ^/ru/node$
RewriteRule .* - [F,L]

kurl wrote: или редирект с неё сделать (и куда)?

А смысл? Это ж роботы, они всё равно не пойдут туда, куда Вы их пошлёте.

Аватар пользователя Antonina Antonina 20 мая в 19:46

А заходы прямые идут? Что в статистке типа метрика показывает? Просто была такая ситуация на одном нашем сайте. Поперли прямые заходы и переходы из соцсетей как из рога изобилия. От Яндекса толком ничего не добьешься. Поэтому пробовали разные варианта блокировки в виде Cloudflare и антиботов разных.