我们正在执行以下来自PHP的curl调用。
$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是否不是断开/死链接。
答案 0 :(得分:2)
记住5个HTTP状态代码类:1xx继续(协议切换),2xx OK,3xx重定向,4xx客户端错误,5xx服务器错误。
如果您的Curl客户端遵循重定向(3xx),我认为您只需测试该状态代码< = 299.所有其他状态代码将成为“断开的链接”。
根据您的测试深度,您还可以考虑这些案例:
如果您的目标是更改已损坏链接的显示,则可以使用Javascript在客户端管理它,但它可以仅限于您的域。见this question