Мы выполняем вызов curl из PHP ниже.
$url = $fullurl;
if (isset($url)) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch , CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($ch);
$headers = curl_getinfo($ch);
curl_close($ch);
$check_url_status = $headers['http_code'];
if ($check_url_status == '200')
$ress = "Link Works";
else
$ress = "Broken Link";
}
Какие другие коды статуса HTTP мы должны рассмотреть, чтобы проверить, не является ли URL неработающей / неработающей ссылкой.
Запомните 5 классов кодов HTTP Status: 1xx Continue (переключение протокола), 2xx OK, 3xx Redirect, ошибка клиента 4xx, ошибка сервера 5xx.
Если ваш клиент Curl следует перенаправлениям (3xx), я думаю, вы можете просто проверить этот код состояния <= 299. Все остальные коды статуса приведут к «битой ссылке».
В зависимости от того, насколько глубоким является ваш тест, вы также можете подумать о следующих случаях:
Если ваша цель — изменить отображение неработающей ссылки, вы можете использовать Javascript для управления ею на стороне клиента, но она может быть ограничена вашим доменом. Увидеть этот вопрос
Других решений пока нет …