-1
我正在用PHP開發一個小型網站。該網站正在發送REST curl請求以從後端系統獲取和發佈數據。PHP:POST REST CALL不能在Redhat的AMAZON EC2上工作
我開始在我的電腦上使用LAMP環境開發這個網站。 我所有的CURL調用在LAMP環境中都運行良好。
由於我不得不把這個網站提供給某個人,所以我把它推到了AMAZON EC2上,在一個Redhat實例上,我安裝了Apache2和Php5。
我的問題是,雖然GET調用在亞馬遜上工作,但我所有的POST調用都沒有。看起來,後端系統不會收到POST調用,並且不會返回任何消息。
這是我使用(這又是工作,從我的本地罰款)的PHP代碼的樣本:
$urlwebbehavior = 'https://'.$domain.'/api/inbound/activity?access_token='.$tokenServer.'&member_id='.$memberid.'&type=web_behavior&action_type=Page%20View&page='.$pageurl;
$ch5 = curl_init();
curl_setopt($ch5, CURLOPT_URL, $urlwebbehavior);
curl_setopt($ch5, CURLOPT_POST, true);
curl_setopt($ch5, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch5, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch5, CURLOPT_HTTPHEADER, array('Accept:application/vnd.backend-v1+json'));
$result5 = curl_exec($ch5);
$curlErrno = curl_errno($ch5);
if($curlErrno){
$curlError = curl_error($ch5);
throw new Exception($curlError);
}
curl_close($ch5);
我首先想到的是與EC2的一個問題。我通過使用來自Amazon的命令行的等效curl請求進行測試,並且它工作正常。所以我認爲EC2不是問題。 它可能是Apache配置或其他東西。
在此先感謝您的幫助。
Baocrazy
是的。我直接從amazon實例運行curl命令,它工作正常。此外,網站代碼還包含一些使用curl的GET調用。 – Baocrazy
var_dump(extension_loaded('curl'));返回bool(true)。 – Baocrazy
var_dump $ result5返回字符串(0)「」 – Baocrazy