Скрипт проверки доступности сайта


pulse
Давненько уже собирался написать маленький, но ИМХО очень полезный скриптик — контроль работоспособности сайтов.
Вроде существует достаточно сервисов-аналогов — я с лёту парочку попробовал — не совсем то, да и вообще «своя рубаха ближе к телу».

Недавний выход из строя дата центра, и ессно моего сервака — стало последней каплей к написанию сего скрипта.

Идея простая — дёргаем морду сайта — смотрим заголовок ответа — если сменился, кидаем админу (в данном случае мне) смс-ку о смене статуса. Всё это дело загоняем в крон и усё.

Собственно — вот код (всё с комментариями):

В папке где лежит сам скрипт, создаем папочку caсhe, куда кидаем domains.txt со списком чекаемых доменов (страничек) (без http://).
Так же рекомендую бросить в папку файлик .htaccess с содержимым deny from all
Остальные файлы (логи опросов и текущее состояние) должны создаться сами при первом запуске скрипта (прав должно хватить т.к. крон запускается от имени пользователя имеющего доступ к файлам на создание и модификацию).


16 комментариев на «“Скрипт проверки доступности сайта”»

  1. Что то у меня ничего не работает =( Может посоветуете хорошие сервис-программки. Заранее спасибо.

  2. Странно, что кто-то отписывается о неработоспособности, у меня все нормально работает.

  3. Спасибо Алексей за скрипт!
    Наверное я что-то не так сделал…но с htaccess не заработало, как только удалил его все как часы пошло.
    Все равно много ++.
    Обычно за деньгу сервисы подобные предоставляют, а тут за так.

  4. Сервис проверки доступности сайта — WEBO Pulsar . Мониторит неограниченное количество адресов, отправляет уведомления по e-mail, смс, jabber, выдает трассировку ошибки.

  5. Сервис хороший, но платный.
    Мой скрипт можно доработать по функционалу до такого же уровня.

  6. 🙂 Скажите автор, а вы не модифицируете этот скрипт, чтобы ТиЦ проверял? Удобно было бы сразу получать уведомления при изменении, ведь интернет не всегда под рукой.

  7. Александр предложенный вами sitestatus.ru это фигня полная. Подобных куча.
    Нужно, чтобы он круглосуточно мониторил, а не 1 раз вручную.
    Вот что могу посоветовать людям uptimerobot.com — 50 сайтов для чеканья (каждые 5 мин), уведомления в твиттере, по мылу, на мобильный по смс (не для всех операторов).

  8. Вот что при запуске:

    Warning: file(./caсhe/domains.txt) [function.file]: failed to open stream: No such file or directory in /var/www/mpost/data/www/site.ru/index.php on line 15

    Warning: file_get_contents(./caсhe/states.txt) [function.file-get-contents]: failed to open stream: No such file or directory in /var/www/mpost/data/www/site.ru/index.php on line 16

    Warning: Invalid argument supplied for foreach() in /var/www/mpost/data/www/site.ru/index.php on line 21

    Notice: Undefined variable: states in /var/www/mpost/data/www/site.ru/index.php on line 43

    Warning: file_put_contents(./caсhe/states.txt) [function.file-put-contents]: failed to open stream: No such file or directory in /var/www/mpost/data/www/site.ru/index.php on line 43

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *