WAMP SOAP SSL Certificate (PEM) Failed to load external entity

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Willem Onbekend

Willem Onbekend

01/04/2015 12:24:29
Quote Anchor link
Hi,

ik kom er zelf niet uit, heb al vanalles geprobeerd.

Ik probeer een SoapClient te gebruiken in een PHP script. Op mijn WAMP lokaal krijg ik deze melding:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://cxxxx.cxxx.nl/sssss/webservices/transfer.asmx?WSDL' : failed to load external entity "https://cxxxx.cxxx.nl/sssss/webservices/transfer.asmx?WSDL" in C:\wamp\www\test\index.php:108 Stack trace: #0 C:\wamp\www\test\index.php(108): SoapClient->SoapClient('https://cxxxx...', Array) #1 {main} thrown in C:\wamp\www\test\index.php on line 108


Met deze aanroep:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$context = stream_context_create(array(
    'ssl' => array(
        'verify_peer' => false,
        'allow_self_signed' => true,
        'local_cert' => $certificate,
        'passphrase' => '111111'
    ),
    'https' => array(
        'curl_verify_ssl_peer'  => false,
        'curl_verify_ssl_host'  => false
    )
));

//define the soap client object

$client = new SoapClient($wsdl, array(
    'passphrase' => "11111",
    "trace"=>true,
    "stream_context" => $context,
    "exceptions"=>true,
    "local_cert"    => $certificate     //parameter for certificate authentication
));


Hetzelfde script op de productie server werkt wel goed...

Deze functie werkt lokaal ook en krijg dan de XML van de WSDL terug.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
function url_get_contents ($url, $cert) {
    if (function_exists('curl_exec')){
        $conn = curl_init($url);
        curl_setopt($conn, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($conn, CURLOPT_FRESH_CONNECT,  true);
        curl_setopt($conn, CURLOPT_RETURNTRANSFER, 1);

        curl_setopt($conn, CURLOPT_FOLLOWLOCATION, 0);

        curl_setopt($conn, CURLOPT_SSL_VERIFYHOST, 2);
        curl_setopt ($conn, CURLOPT_SSLCERT, $cert);
        curl_setopt ($conn, CURLOPT_SSLCERTPASSWD, "111111");

        $url_get_contents_data = (curl_exec($conn));
        curl_close($conn);
    }elseif(function_exists('file_get_contents')){
        $url_get_contents_data = file_get_contents($url);
    }elseif(function_exists('fopen') && function_exists('stream_get_contents')){
        $handle = fopen ($url, "r");
        $url_get_contents_data = stream_get_contents($handle);
    }else{
        $url_get_contents_data = false;
    }
    return $url_get_contents_data;
}


De fout treed op bij het aanroepen van de constructor van de SOAP client. Als ik de WSDL in een file opsla en die gebruik in de aanroep werkt het wel (alleen werkt dan de rest van de code niet meer omdat de functies dan niet gevonden worden) .

Weet iemand hier iets meer over en heeft nog suggesties?
 
Er zijn nog geen reacties op dit bericht.



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.