В мою голову частенько приходят бредовые мысли. Нередко они требуют публикации в блоге. Вчера, на протяжении трех часов я упорно изобретал велосипед. Собственно говоря, велосипед работает, но крутит в другую сторону и по сути не особо то и нужен. Но в любом случае остался доволен. Суть велосипеда состоит в том, что я написал скрипт проверки доступности сайта, хотя мог бы воспользоваться готовыми онлайн сервисами. Но я немного не подумал об одном. Как я узнаю, что мой сервак слег, если при падении сервера крон на моем сервере не сможет выполнить задание. В итоге получился велосипед, педали которого крутятся в другую сторону.
Каждый час скрипт проверки отправляет на мой майл сообщение, что сервер доступен. Учитывая мое чувство юмора, текст сообщения содержит следующее: «Спи спокойно, серв жив». Если сообщение не пришло значит сервер повис.
В планах, арендовать место на VPS хостинге и установить данный скрипт на нем, но с обратным действием. То есть, если скрипт не получит ответ от сервера, то пришлет сообщение на мыло: «Вставай, админ! Сервак повис.»
Сам же скрипт состоит из одного файла. Работает он при помощи библиотеки cURL. Скрипт отправляет запрос на сайт и получает ответ в виде http-кода. Функция check_domain_availible() получает ответ от сервера и посылает его в письме пользователю.
Не у всех, конечно, настроен Push E-Mail. На помощь к нам приходят доблестные операторы, которые предлагают абонентам личные электронные ящики, связанные с номерами. У Билайна он имеет вид 79XXXXXXXXX@sms.beemail.ru, в начале которого вписан ваш номер. При отправке письма на данный ящик вам придет смс-уведомление. Подключить услугу можно позвонив по номеру 06849909. Майл.РУ с недавнего времени теперь может уведомлять вас о новом письме по смс. Поройтесь в настройках ящика и вы поймете о чем я говорю.
Скачать мой горе-скрипт проверки доступности сайта можно здесь. В скрипте я все откомментировал. Если возникнут вопросы — обращайтесь. Заливаете его на сервер и прописываете крон-задание. В ISP Manager запланировать крон-задание довольно просто. Заходим в менеджер, слева кликаем «Планировщик-cron» . Выбираем создать задание и вписываем путь:
/usr/bin/fetch -q -o /dev/null http://ваш_сайт/скрипт.php
Выставляем время (у меня каждый час) и сохраняем. Можете нажать «Выполнить», дабы убедиться в работе скрипта.
Вот собственно говоря и все. Пусть ваши сайты всегда будут в доступности!
Привет, а как сделать, чтобы скрипт по списку проверял доступность сайтов ?
Собственно говоря, я об это знаю. И в статье, которая уже вышла, написал об этом. Но бытуют мнения, что метрика плохо работает.
Яд! Получать письма о том, что сервер еще жив… 🙂
Зачем такой велосипед, да еще и работающий не правильно? Ведь на много проще зарегистрироваться в Яндекс.Метрика и включить мониторинг, для этого даже не нужно устанавливать счетчик. И тебе будут приходить сообщения и на мобильник и на мыло.