1
我用這個功能,使捲曲的請求:PHP curl_exec()掛
function curl_request($options) //single custom cURL request.
{
$ch = curl_init();
$options[CURLOPT_FOLLOWLOCATION] = true;
$options[CURLOPT_COOKIEJAR] = 'cookies.txt';
$options[CURLOPT_COOKIEFILE] = 'cookies.txt';
$options[CURLINFO_HEADER_OUT] = true;
$options[CURLOPT_VERBOSE] = true;
$options[CURLOPT_RETURNTRANSFER] = true;
$options[CURLOPT_CONNECTTIMEOUT] = 5;
$options[CURLOPT_TIMEOUT] = 5;
curl_setopt_array($ch, $options);
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
腳本有時會掛起,但並非總是如此,在$response = curl_exec($ch)
線。即使PHP腳本設置爲無限超時(在客戶端,Firebug將其視爲「中止」),也會發生這種情況。錯誤日誌中沒有任何內容。當它掛起時,它不會越過那條線。
可能會發生什麼?有什麼建議麼?
'CURLOPT_COOKIEJAR'和'CURLOPT_COOKIEFILE'指向同一個文件?你確定這是你想要的嗎?爲了測試,我只是評論這兩行以防止因文件訪問造成的死鎖。 – hakre
事情是請求需要cookies工作 – babonk
是的,但只是爲了調試。或者監視網絡流量並報告腳本掛起時發生的情況。 – hakre