2016-09-26 53 views
0

我有使用捲曲與後場致電時捲曲不上服務器工作

$username = 'xxxx'; 
$password = 'xxxx'; 
$fields = array(
    'field' => urlencode('field_value') 
); 
$fields_string = ''; 

foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; } 
rtrim($fields_string, '&'); 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, "http://example.com"); 
curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch,CURLOPT_POST, count($fields)); 
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string); 
$output = curl_exec($ch); 
curl_close($ch); 

print_r($output); 

它的工作在我的本地主機,但不工作我的服務器上調用API一個PHP代碼。

這是我的本地 localhost_curl

的捲曲的信息,這是我我的服務器的捲曲信息server_curl

捲曲工作正常,如果我叫一個URL沒有後場,但給我一個未找到錯誤如果我用後場

回答

0

由於您確認了捲曲正在您的服務器上調用它,它可以發生該請求被重定向(用於服務器的地理位置),你是不是在你的捲曲處理它。添加這個你的捲曲。

curl_setopt($ch,CURLOPT_FOLLOWLOCATION, true); 

您可以啓用調試模式,看看curl在做什麼。這將幫助你瞭解更多有關錯誤(如果有的話)。

curl_setopt($ch,CURLOPT_VERBOSE, true); 
0
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_NTLM); 

使用此curl_setopt之前($ CH,CURLOPT_USERPWD,$用戶名 「:」。$密碼);

和使用curl_error($ CH)函數來查看捲曲的錯誤。

相關問題