我試圖通過Curl上傳文件到另一臺服務器。該腳本將文件上傳到我自己的服務器。我的服務器處理上傳和響應,我的腳本繼續進行,因爲它應該。 Hovever如果上傳的文件的大小(大約500MB)大小(看起來確實不同),即使在我的服務器響應後(AFAIK通過記錄服務器端腳本的輸出),腳本仍會繼續運行。客戶端是運行Xampp的Windows 7 x64機器(嘗試了不同的版本)。如果我通過html表單將相同的文件上傳到相同的serverside腳本,那麼一切正常,我得到我的迴應。可能是什麼問題呢?php curl_exec不響應服務器響應
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
"MAX_FILE_SIZE" => "2147483648",
"action" => "upload",
"userfile" => "@".$filepath));
if($uploadresponse = curl_exec($ch)){
echo"Upload done!";
} else {
echo"Curl error no. ".curl_errno($ch)." (".curl_error($ch).")";
}
我現在已經嘗試從另一臺機器,服務器與Windows Server 2012 x64(通過Xampp不IIS)。有效。原因可能是上傳速度比通過家庭連接快5倍。 – user2681321
從Win 2012服務器安裝相同的Xampp,它不能在我的家用計算機上運行。我也嘗試過在沒有運氣的安全工作模式下。自第一次測試開始以來,Firewall Antivirus等已被禁用。我將在新的Windows 7安裝的另一臺機器上嘗試它。如果它不起作用,我會嘗試在家裏安裝Windows Server 2012,因爲問題可能是路由器什麼的。 – user2681321
它也沒有在Windows服務器上工作。但是在我連接到我的鄰居WLAN後,它工作正常。我現在來看一下路由器的設置。 – user2681321