检查数据库中死链接的状态代码,最好是php

时间:2011-05-25 11:34:50

标签: php sql broken-links

您好我正在尝试找出用于检查数据库中重定向的代码,是否有一种方法可以在每次脚本运行时测试损坏或死链接的URL?我一直在修补get_header和http_send_status,但我是一个新手,我可能做得不对。

3 个答案:

答案 0 :(得分:0)

你的意思是重定向在PHP中完成吗?与header()或类似的一样?可以使用cURL或类似方法隔离和测试这些链接以检查它们是否存在。您是否需要检查每个重定向的每个链接,或者您只是想检查以后是否可以忽略这些链接?

如果是这样,最好的想法可能是设置一个cron作业来每晚完成这个并记录所有损坏的链接。

编辑:

喜欢这样的事情吗?

function urlExists($url)  
    {  
        $ch = curl_init($url);  
        curl_setopt($ch, CURLOPT_TIMEOUT, 5);  
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);  
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
        $data = curl_exec($ch);  
        $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);  
        curl_close($ch);

        // Check return code to determine if page exists
        if($httpcode >= 200 && $httpcode < 300){  
            return true;  
        } else {  
            return false;  
        }  
    }  

答案 1 :(得分:0)

答案 2 :(得分:0)

使用w3schools的validator

输入您的网站网址,并务必检查Check linked documents recursively, recursion depth选项