Php cURL在现场工作但在另一个上没有返回

时间:2014-03-03 18:30:38

标签: php curl

Php curl_exec在这里工作:http://membership.oqmhandbook.com/order.php

但是相同的代码在这里不起作用:http://wecallyouleads.com/order.php

任何帮助将不胜感激.. !!

我的代码是

$dsc_msg = '[my xml request]';

$dsc_header = array("POST /send/interchange HTTP/1.1",
   "Host: lightning.instascreen.net",
   "Content-Type: text/xml, charset=utf-8‏",
   "SOAPAction: \"https://lightning.instascreen.net/send/interchange\""
  );

  $ch = curl_init("https://lightning.instascreen.net/send/interchange");
  if ($ch == FALSE) {
   echo "Connecting to createsend failed\n";
  }
  curl_setopt($ch, CURLOPT_HTTPHEADER, $dsc_header);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($ch, CURLOPT_POSTFIELDS, $dsc_msg);
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
  curl_setopt($ch, CURLOPT_VERBOSE, 0);    

  $result = curl_exec($ch);
  echo "Return XML:\n$result\n";

1 个答案:

答案 0 :(得分:1)

从您的错误消息中,看起来它正在尝试验证SSL(它绝对应该),但它不能。真的,为了解决这个问题,您需要确保SSL的顺序正确。

如果你绝对不能,你可以尝试添加它,看它是否有所作为。

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

这不是一个很好的做法,这篇关于如何做这样的事情使cURL成为世界上最危险的代码真的很好。向下滚动到第7节(PDF的第7页),了解一些不做的好例子。

The Most Dangerous Code in the World: Validating SSL Certificates in Non-Browser Software