找出一个网站是否返回200

时间:2012-05-18 16:45:26

标签: php validation get-headers

我使用以下代码检查用户提供的链接是否真正指向现有网站:

$headers=get_headers($imageurl);
if (strpos($headers[0], '200') === false) {
    echo "not valid1";
    exit;
}

作为测试,我使用img http://cdn.thegloss.com/files/2012/04/stormtr.jpg

只要我在我的localhost上使用它,它工作正常 - 即它说url有效并且没有回显“not valid1” - 现在它在不同的服务器上并且它回应“not valid1”。怎么会?有人有什么想法吗?

谢谢! 丹尼斯

2 个答案:

答案 0 :(得分:2)

get_headers()因为失败而返回false 可能是因为allow_url_fopen在服务器上设置为Off。

答案 1 :(得分:1)

尝试此操作只返回3位HTTP响应代码

function get_response_code($theURL) {
    $headers = get_headers($theURL);
    return substr($headers[0], 9, 3);
}