Аптайм сайта (от англ. uptime ) — время его непрерывной работы – крайне важная характеристика доступности сайта. Для того чтобы убедиться в доступности или недоступности сайта, необходимо выполнить проверку. Проверку доступности сайта можно провести с помощью PHP скрипта, о чем мы и поговорим далее.

Проверка доступности сайта с помощью PHP

Аптайм сайта (от англ. uptime) — время его непрерывной работы – крайне важная характеристика доступности сайта. Для того чтобы убедиться в доступности или недоступности сайта, необходимо выполнить проверку. Проверку доступности сайта можно провести с помощью PHP скрипта, о чем мы и поговорим далее.

Самый простой инструмент для проверки сайта на доступность – это модуль PHP cURL. С помощью него мы будем выполнять проверку статуса доступности того или иного сайта.

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

Следующий кусочек кода используется для проверки доступности домена с помощью cURL. Для большей полезности, весь код, приведенный снизу, обернут в функцию, которая называется isSiteAvailable().

Функция isSiteAvailable() выполняет cURL запрос и проверяет доступность домена, а также находится ли он онлайн. Если сайт доступен - возвращается TRUE, иначе возвращается FALSE, т.е. сайт находится офлайн.

  function isSiteAvailible($url) {

    // Проверка правильности URL
    if(!filter_var($url, FILTER_VALIDATE_URL)){
      return false;
    }

    // Инициализация cURL
    $curlInit = curl_init($url);

    // Установка параметров запроса
    curl_setopt($curlInit,CURLOPT_CONNECTTIMEOUT,10);
    curl_setopt($curlInit,CURLOPT_HEADER,true);
    curl_setopt($curlInit,CURLOPT_NOBODY,true);
    curl_setopt($curlInit,CURLOPT_RETURNTRANSFER,true);

    // Получение ответа
    $response = curl_exec($curlInit);

    // закрываем CURL
    curl_close($curlInit);

    return $response ? true : false;
  }

Как использовать?

Вызывайте функцию isSiteAvailable() со строковым аргументом, представляющим собой URL адрес сайта, доступность которого вы хотите проверить. И в зависимости от ответа вы можете предпринимать дальнейшие действия.

  <?php

  $URL = 'https://myrusakov.ru';

  if(isSiteAvailible($URL)){
    echo 'Сайт доступен.';
  }else{
    echo 'Сайт недоступен.';
  }

  ?>

Вот так просто можно проверить, доступен ли сайт или нет с помощью PHP и cURL.