Сайт упал — вы узнали об этом от клиента. Как настроить автоматический мониторинг аптайма без платных сервисов: UptimeRobot, самописные скрипты на bash и Python, уведомления в Telegram. Пошаговая настройка.
Самое неприятное для владельца сайта — узнать о падении от клиента или сотрудника. Сайт может быть недоступен часами, пока никто не заметит. За это время теряются заявки, портится репутация, а поисковый робот, зашедший в момент падения, фиксирует ошибку и может временно опустить страницы в выдаче. Запросы о мониторинге доступности стабильно появляются в поиске: «мониторинг доступности сайта как делать», «проверка аптайм сайта по России», «скрипт проверяет доступность сайта». Существующая статья о мониторинге уже ранжируется, но позиции 11-23 — есть куда расти. Эта статья закрывает практический угол: конкретные способы с настройкой.
Почему мониторинг доступности критичен для SEO
Когда сайт падает, поисковый робот при очередном обходе получает ошибку 500 или таймаут. Единичный сбой не страшен, но если сайт лежит регулярно, поисковик начинает считать его ненадёжным и снижает частоту обходов. Это напрямую влияет на скорость индексации нового контента. Кроме того, длительные простои могут привести к временному исключению страниц из индекса. Восстановление позиций после этого занимает дни и недели. Мониторинг позволяет узнать о проблеме раньше, чем поисковик, и исправить её до того, как это повлияет на ранжирование. Подробнее о круглосуточном контроле читайте в статье Проверка доступности сайта 24/7.
Способ 1: UptimeRobot — бесплатный мониторинг
UptimeRobot — это облачный сервис, который бесплатно мониторит до 50 сайтов с интервалом 5 минут. Регистрируетесь, добавляете URL сайта, выбираете тип проверки: HTTP(S) — проверяет, отдаёт ли сервер код 200, или Ping — проверяет доступность сервера по ICMP. Настраиваете уведомления: email, Telegram, Slack. При падении сайта UptimeRobot пришлёт сообщение в течение 5 минут. Это самый простой способ для вебмастера без навыков программирования. Плюс: не требует настройки сервера. Минус: проверка идёт с серверов UptimeRobot, которые могут находиться в других странах. Если сайт заблокирован только для Росссии, UptimeRobot не заметит.
Способ 2: самописный скрипт на bash
Если у вас есть VPS, можно написать простой скрипт для проверки доступности и запустить его по cron. Скрипт отправляет curl-запрос к сайту и, если код ответа не 200, отправляет уведомление в Telegram. Настройка: создайте бота в Telegram через BotFather, получите токен и ID чата. Затем создайте скрипт monitor.sh, который делает curl -s -o /dev/null -w %{http_code} https://vash-site.ru. Если ответ не 200, скрипт вызывает Telegram API для отправки сообщения. Добавьте скрипт в cron с интервалом 5 минут: */5 * * * * /path/to/monitor.sh. Плюс: проверка с вашего сервера в нужном регионе. Минус: если упадёт сам VPS, мониторинг тоже умрёт.
Способ 3: Python-скрипт с расширенной логикой
Python позволяет сделать более умный мониторинг: проверять не только код ответа, но и наличие определённого текста на странице, скорость ответа, валидность SSL-сертификата. Библиотека requests + библиотека python-telegram-bot дают готовое решение за 50 строк кода. Можно добавить логирование времени ответа и построение графиков. Такой скрипт не только сообщит о падении, но и предупредит о деградации — когда сайт работает, но TTFB растёт. Для этого используйте Проверка TTFB в SerpMax как эталонный замер. Если ваш скрипт фиксирует рост времени ответа выше порога, вы можете отреагировать до того, как сайт упадёт полностью.
Способ 4: внешний мониторинг из регионов России
Сайт может быть доступен из Москвы, но недоступен из Хабаровска или Калининграда из-за проблем с маршрутизацией или блокировок. Для проверки из разных регионов используйте SerpMax — он позволяет проверить доступность сайта с разных точек. Это особенно актуально после массовых блокировок и замедлений. Если вы работаете с аудиторией по всей России, настройте мониторинг минимум из трёх географических точек. Также проверьте, что сайт доступен по HTTPS, а не только по HTTP, и что SSL-сертификат валиден. Используйте Проверка SSL сертификата для контроля.
Способ 5: мониторинг через Яндекс.Метрику
Яндекс.Метрика может присылать уведомления о недоступности сайта. Настройка: в Метрике зайдите в «Настройки» → «Уведомления» и включите «Сайт недоступен». Метрика проверяет доступность с серверов Яндекса каждые 15 минут. Если сайт не отвечает 3 проверки подряд, приходит уведомление. Плюс: это бесплатно и уже встроено в экосистему Яндекса. Минус: задержка в 45 минут до уведомления. Для критичных проектов этого недостаточно, но как дополнительный канал оповещения — отлично. Подробнее о работе с Метрикой для SEO читайте в Яндекс.Метрика для SEO.
Часто задаваемые вопросы
Как настроить бесплатный мониторинг доступности сайта?
Зарегистрируйтесь в UptimeRobot, добавьте URL сайта и настройте уведомления в Telegram. Это займёт 10 минут и не требует навыков программирования. Либо используйте уведомления в Яндекс.Метрике.
Как проверить доступность сайта из разных регионов России?
Используйте SerpMax для проверки доступности сайта. Сервис тестирует сайт с разных географических точек и показывает, где есть проблемы.
Что делать, если сайт упал, а мониторинг не сработал?
Проверьте, что сам мониторинг доступен. Если вы используете скрипт на том же сервере, где сайт, и сервер упал полностью — скрипт не выполнится. Поэтому надёжнее использовать внешний мониторинг: UptimeRobot + уведомления Метрики.