Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/247.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 本地主机上的curl_errno 56_Php_Curl - Fatal编程技术网

Php 本地主机上的curl_errno 56

Php 本地主机上的curl_errno 56,php,curl,Php,Curl,我在本地主机上使用php curl有好几天的问题。似乎我没有达到CURLOPT_URL参数。curl_error和curl_errno说,“Recv失败:连接被重置”。url应该返回传递的post数据的已处理值。我正在使用Windows7机器并运行XAMPP3.2.2 感谢你们的帮助。谢谢 下面是我的代码: private function getCurl ($credentials = array(), $app_code = "") { $ch = curl_init(); $data =

我在本地主机上使用php curl有好几天的问题。似乎我没有达到CURLOPT_URL参数。curl_error和curl_errno说,“Recv失败:连接被重置”。url应该返回传递的post数据的已处理值。我正在使用Windows7机器并运行XAMPP3.2.2 感谢你们的帮助。谢谢

下面是我的代码:

private function getCurl ($credentials = array(), $app_code = "")
{
$ch = curl_init();
$data = array('Code' => $code,'type' => 'credentials');
curl_setopt($ch, CURLOPT_URL,'http://localhost/web/service.php');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Basic ' . 
base64_encode($credentials['user'] . ":" . $credentials['pass'])));
$curl_response = curl_exec($ch);
//return array(curl_error($ch),curl_errno($ch));
curl_close($ch);
return $curl_response;
}
Apache错误日志:[Thu Apr 14 07:46:54.089533 2016][ssl:warn][pid 3372:tid 252]AH01909:www.example.com:443:0服务器证书不包含与服务器名称匹配的ID

发生这种情况的原因可能有很多。我认为您应该使用XAMP控制面板来查看具体的错误

  • 很可能另一个应用程序(如Skype)正在使用端口80。在这种情况下,您可能需要使用
    netstat-ano
    进行检查,并找到正在使用端口80的用户。关闭使用端口80的程序,然后再次尝试启动apache

  • 这可能是由于你的权利。您需要成为管理员

  • 禁用防病毒(请先尝试禁用skype并重新运行,如果它不起作用,请执行此步骤)

  • 右键单击xampp控制面板并以管理员身份运行

  • 在Apache(httpd.conf)中使用的服务器名称必须与Apache(httpd ssl.conf)中的服务器名称相同,例如在Apache(httpd.conf)中的服务器名称localhost:8080,然后在Apache(httpd ssl.conf)中的服务器名称应该与此服务器名称类似www.example.com:8080

  • 您还可以尝试更改Apache的配置。 a) 选择Apache(httpd.conf) b) 搜索这行:听80 c) 更改为:听8081 d) 保存的文件

    进一步…
    a) 选择Apache(httpd ssl.conf) b) 搜索这行:听443 c) 换成这个:听444 d) 保存的文件


  • 您能检查一下您的Web服务器日志中记录了什么吗?嗨,Droy,这是我的日志XAMPP@DROY如果可能有帮助的话,我试着在另一台计算机上设置这个应用程序,旋度效果很好。我的计算机最近的变化是django的python和pip安装。它在第二台计算机上以管理员身份运行了吗?你能检查一下在XAMP控制面板中看到了什么吗?有时这也是由于端口80可能正被Skype等应用程序使用。