使用php SOAPclient并获取错误:“0”;必须通过安全通道查看此页面“;

使用php SOAPclient并获取错误:“0”;必须通过安全通道查看此页面“;,php,soap,Php,Soap,我试图从web服务调用带有php SOAPclient的方法,但出现以下错误: PHP Fatal error: Uncaught SoapFault exception: [HTTP] Forbidden ( The page must be viewed over a secure channel (Secure Sockets Layer (SSL)). Contact the server administrator. ) Stack trace: #0 [internal fun

我试图从web服务调用带有php SOAPclient的方法,但出现以下错误:

PHP Fatal error:  Uncaught SoapFault exception: [HTTP] Forbidden ( The page must be viewed over a secure channel (Secure Sockets Layer (SSL)). Contact the server administrator.  ) 
Stack trace:
#0 [internal function]: SoapClient->__doRequest('<?xml version="...', 'http://www.ebri...', 'eBridge.WebServ...', 1, 0)
#1 /var/application/test-control4-xml.php(284): SoapClient->__call('GetDocumentList', Array)
#2 /var/application/test-control4-xml.php(284): SoapClient->GetDocumentList(Array)
#3 {main}

正如您所看到的,我使用的是https地址,因此我不确定为什么会出现此错误。我做错什么了吗

导致此错误的一个常见原因是编译php版本时没有使用openssl库。简单地说,您的php无法通过https连接发出请求


检查您的phpinfo()输出,看看您是否有openssl或任何类型的SSL支持。

将该WSDL提供给显示该WSDL文件中的链接指向其服务器上的http://URL,而不是https://。您可能想询问他们对此的支持。

您需要一份证书。。。。我想我确实启用了openssl支持。谢谢你的链接,我以前没见过。我对这种肥皂很陌生。我明白你的意思了,既然你提到了,我可以在我的错误消息中看到http地址。我尝试过“支持”,但被告知他们不回答开发问题,所以现在仍然坚持。
$client = new SoapClient("https://www.ebridgeservices.com/ePortalService.asmx?WSDL");
$params=
array( 'login' => $user,
    'password' => $password,
    'status'=>'All',
    'docType'=>'850',
    'fromDate'=> $from_date,
    'toDate'=> $to_date,        
    'partner'=>'OurPartner') ;          
$results = $client->GetDocumentList($params);       
var_dump($results->GetDocumentListResponse);