无响应从Curl请求转到https服务器

时间:2013-11-28 09:42:24

标签: php curl

我正在为服务器创建一个PHP curl请求并期待响应中的某些字符串,但没有生成响应,这可能是什么原因?

以下是相同的Curl代码:

$fields = array("username"=> 'xxx',"domain"=> 'xxx',"password" => 'xxx');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://host:8090/add-user"); 
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);     
curl_setopt($ch, CURLOPT_USERPWD, $usr.':'.$pass);
curl_setopt($ch, CURLOPT_POST, 1);      
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);   
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);    
if(!$result=curl_exec($ch)){ 
    trigger_error(curl_error($ch)); 
} 
curl_close($ch);
var_dump($result);

以下是相同的命令行请求:

curl --data 'username=xxx&domain=xxx&password=xxx' https://host:8090/add-user -k -v -u 'usr:pass'

我在做什么错了?

1 个答案:

答案 0 :(得分:1)

您应首先尝试使用curl_setopt($ch, CURLOPT_VERBOSE, $file_handler); = $file_handler的{​​{1}}。因此,您将看到 cURL 的确切内容以及失败的位置。