Новости проекта
Мониторинг узнаёт блокировку хостингом и предупреждает, когда модуль замолчал
Мониторинг доступности теперь отличает страницу блокировки хостинга от живого сайта, а если сайт открывается, но модуль больше часа молчит, мы пишем владельцу: защита в это время не работает.
На днях хостинг закрыл сайт одного из клиентов. Вместо магазина посетители видели страницу «Сайт заблокирован хостинг-провайдером», а наш мониторинг считал сайт доступным: у страницы блокировки код ответа 200, как у обычной. Модуль на сайте, понятно, тоже замолчал — запросы до него не доходили. Обе дыры закрыли.
Блокировка хостингом — это простой. Мониторинг читает заголовок страницы. «Сайт заблокирован хостинг-провайдером», «Account Suspended» и похожие формулировки хостингов он считает простоем, как ошибку сервера. Владелец получает обычное письмо «сайт не отвечает» с причиной и советом: причину блокировки хостинг присылает на почту владельца аккаунта хостинга, и если дело в нагрузке от ботов, им стоит показать отчёт из журнала визитов.
Часть хостингов включает на время атаки свою проверку: короткую страницу, которая ставит cookie и перезагружается. Браузер проходит её сам, и сайт для людей работает. Такую заглушку мы проходим так же, как браузер, и смотрим, что за ней, — поэтому лишних тревог из-за неё не будет.
Модуль замолчал, а сайт открывается. Мониторинг открывает главную страницу каждую минуту, и исправный модуль выходит к нам на связь хотя бы раз в несколько минут. Если сайт открывается, а модуль больше часа молчит, мы открываем сайт ещё раз в обход кэша страниц: главную нередко отдаёт кэш, и тогда модуль честно молчит. Не отозвался и на этот раз — значит, вызов модуля пропал: чаще всего обновление CMS или темы перезаписало файл, куда он был вставлен. Защита в это время не работает, хотя снаружи всё выглядит нормально. Раньше это было видно только в карточке сайта, теперь приходит письмо и сообщение в Telegram — не чаще раза в трое суток, с подсказкой, что проверить, и ссылкой на бесплатную помощь поддержки. Когда модуль возвращается, предупреждение в кабинете снимается само. Отключается в настройках уведомлений, категория «Защита сайтов».