我運行的EasyPHP和PHP5,當我運行它仍然返回代碼200的代碼在Windows 7機器上測試該代碼片段,我'使用不存在的網址,所以它不應該,應該嗎?這是因爲重定向發生在例如http://www.123-reg.co.uk?這就是我懷疑的,但我正在努力尋找我如何解決這個問題。測試,如果一個網站是增長了檢查CURLINFO_HTTP_CODE返回200即使網站是假的
$url = "http://www.bnkbkvbirbcx.co.uk";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, TRUE);
curl_setopt($ch, CURLOPT_NOBODY, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, FALSE);
$hr = curl_exec($ch);
$httpreturncode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $httpreturncode;
插入var_dump($ hr,curl_getinfo($ ch))會產生這個輸出;
string 'HTTP/1.1 200 OK
Date: Fri, 28 Sep 2012 20:18:16 GMT
Server: Apache
Cache-control: no-cache, no-store
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Pragma: no-cache
Connection: close
Content-Type: text/html; charset=UTF-8
' (length=224)
array
'url' => string 'http://www.bnkbkvbirbcx.co.uk' (length=29)
'content_type' => string 'text/html; charset=UTF-8' (length=24)
'http_code' => int 200
'header_size' => int 224
'request_size' => int 62
'filetime' => int -1
'ssl_verify_result' => int 0
'redirect_count' => int 0
'total_time' => float 0.063
'namelookup_time' => float 0.016
'connect_time' => float 0.031
'pretransfer_time' => float 0.031
'size_upload' => float 0
'size_download' => float 0
'speed_download' => float 0
'speed_upload' => float 0
'download_content_length' => float -1
'upload_content_length' => float 0
'starttransfer_time' => float 0.063
'redirect_time' => float 0
'certinfo' =>
array
empty
'redirect_url' => string '' (length=0)
我相信cURL有一個選項來禁用重定向。 –
當我打電話給一個「假」網站時,我個人將其解釋爲無效網頁,您將在網頁中獲得錯誤頁面,我將收到404響應代碼,我將不會重定向。到目前爲止,我看不到你的問題是什麼...... – rekire
你應該能夠看到代碼,它只是在許多例子中相同,所以我不知道爲什麼我應該有這個問題。 – kethi