Salut à tous.

Voici mon problème, j'ai un serveur web PHP qui appelle un web service SOAP sur un autre serveur PHP en mode sécurisé.

J'utilise un générateur de WSDL et un générateur de classe cliente.

Entre mes 2 serveurs, un proxy, je configure donc le proxy à l'appel SoapClient.

Je fais le test en http pour valider le fonctionnement : ça marche nickel.
Je mets le https pour l'appel au web service et ça ne marche plus.
Premier constat, je me connecte bien au wsdl en https mais le __soapCall me retourne une erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
Fatal error: Uncaught SoapFault exception: [HTTP] Not Found in /var/www/xxxxxxxxxx.php:173
Stack trace:
#0 [internal function]: SoapClient->__doRequest('<?xml version="...', 'http://xxx...', 'urn:Itineraires...', 1, 0)
#1 /var/www/xxxxxxxxxx.php(173): SoapClient->__soapCall('getItineraires', Array)
On voit que l'url n'est pas bon, c'est http au lieu de https.
Pourtant le new SoapClient contient bien l'url en https.

Donc je force le "location" ainsi que le proxy sur le __soapCall
Et :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
Fatal error: Uncaught SoapFault exception: [HTTP] Could not connect to host in /var/www/xxxxxxxxxx.php:173
Stack trace:
#0 [internal function]: SoapClient->__doRequest('<?xml version="...', 'https://xxx...', 'urn:Itineraires...', 1, 0)
#1 /var/www/xxxxxxxxxx.php(173): SoapClient->__soapCall('getItineraires', Array)
Par acquis de conscience, j'ai vérifié si on arrivé à se connecter et lire la liste des functions __getFunctions. Ca marche bien mais dès que je fais un appel de function, ça plante.

Quelqu'un a une idée ?