2010-08-16 15 views
0

J'essaye de mettre en place un SoapClient de PHP pour se connecter à un wsdl ... CURL & WGET du serveur fonctionne très bien.soapclient ou fopen ne fonctionne pas

Si j'essaie d'utiliser soapclient, je reçois les messages d'erreur ci-dessous.

$wsdl = 'http://pav3.cdyne.com/PavService.svc?wsdl'; 

try { 
    $client = new SoapClient($wsdl, array('trace' => true, 'exceptions' => true)); 
} catch (SoapFault $f) { 
    echo $client->_getLastRequest(); 
    echo $client->_getLastResponse(); 
    echo $f->getMessage(); 
} catch (Exception $e) { 
    echo $client->_getLastRequest(); 
    echo $client->_getLastResponse(); 
    echo $e->getMessage(); 
} 

Je reçois le message d'erreur:

<br /><b>Warning</b>: SoapClient::SoapClient(http://pav3.cdyne.com/PavService.svc?wsdl) [<a href='soapclient.soapclient'>soapclient.soapclient</a>]: failed to open stream: HTTP request failed! in <b>/coachflex/www/htdocs/CoachFlex/modules/other/checkAddress.php</b> on line <b>35</b><br /> 

<br /><b>Warning</b>: SoapClient::SoapClient() [<a href='soapclient.soapclient'>soapclient.soapclient</a>]: I/O warning : failed to load external entity &quot;http://pav3.cdyne.com/PavService.svc?wsdl&quot; in <b>/coachflex/www/htdocs/CoachFlex/modules/other/checkAddress.php</b> on line <b>35</b><br /> 

Si je tente d'utiliser simplement fopen sur l'adresse ci-dessus, je reçois:

Attention: fopen (http://pav3.cdyne.com/PavService.svc?wsdl) [ function.fopen]: impossible d'ouvrir le flux: la requête HTTP a échoué! dans /coachflex/www/htdocs/CoachFlex/modules/other/checkAddress.php en ligne

Je ne peux pas comprendre pourquoi je peux connecter via boucle/wget, mais pas par PHP. allow_url_fopen est réglé sur On

Répondre

2

J'ai résolu mon problème. C'était en fait un problème avec mon pare-feu. Le pare-feu supprimait les paquets envoyés via PHP, mais via curl ou wget n'étaient pas abandonnés. J'ai ajouté une règle pour tout le trafic de ce serveur et ai augmenté la longueur de paquet et tout fonctionne très bien maintenant!

Cette page a été ce qui m'a pointé dans la bonne direction: http://www.radiotope.com/content/safari-and-sonicwall