我有这段代码:
<?php
function ping($host, $port, $timeout) {
$tB = microtime(true);
$fP = fSockOpen($host, $port, $errno, $errstr, $timeout);
if (!$fP) {
return "down";
}
$tA = microtime(true);
return round((($tA - $tB) * 1000), 0)." ms";
}
回显结果将显示&#34; down&#34;如果主机不可达,或者ping结果,如果是。
echo ping("fernando.ki2.co", 80, 10);
?>
如果ping重定向到/404.html文件,我需要写。如果它没有,则采用子域;如果是,子域名是免费的。
任何人都可以帮助我吗?
答案 0 :(得分:0)
这样你就无法获得http状态代码。
但是,您可以使用cURL。
http://php.net/manual/en/book.curl.php
它将让PHP直接向远程服务器发出http请求。发出请求后,您可以分析返回的数据,状态代码和其他所有内容。
此示例显示如何获取状态代码:
<?php
$ch = curl_init("http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE)
echo $http_code;
?>