2012-07-21 3 views
0

아래 주어진 코드를 실행하면 ERROR: Invalid HTTPS client certificate path 오류가 생성됩니다. certificate.pem 및 test.wsdl 경로가 올바른지 확인했습니다. 그러한 오류의 원인은 무엇일까요?SOAP : 잘못된 HTTPS 클라이언트 인증서 경로

$wsdl = 'http://localhost:10088/test/test.wsdl'; 

$options = array(
    'local_cert' => 'http://localhost:10088/test/certificate.pem', 
    'soap_version' => SOAP_1_1 
); 


try { 
    $client = new Zend_Soap_Client($wsdl, $options); 
    $result = $client->getLastResponse(); 
    print_r($result); 
} catch (SoapFault $s) { 
    die('ERROR: [' . $s->faultcode . '] ' . $s->faultstring); 
} catch (Exception $e) { 
    die('ERROR: ' . $e->getMessage()); 
} 

답변

0

local_cert의 값은 URL 대신 파일 경로 여야합니다. $options이에 코드를 변경합니다 Zend_Soap_Client에 대한 설명서가 완전하지 않기 때문에

$options = array(
    'local_cert' => '/path_where_cert_is_stored/certificate.pem', 
    'soap_version' => SOAP_1_1 
); 

, 당신은 더 많은 정보를 PHP: SOAP - Manual 볼 수 있습니다 Zend_Soap_Client는 후드 사용하는 것이 때문이다. 제 의견으로는 가능한 주장은 PHP: SoapClient::SoapClient - Manual에 더 잘 설명되어 있습니다 (특히 예제를보십시오).

관련 문제