Maison >développement back-end >tutoriel php >Pourquoi ma connexion PHP SOAP échoue-t-elle avec « SOAP-ERROR : Analyse WSDL : Impossible de charger à partir de [URL] : échec du chargement de l'entité externe [URL] » ?
Analyse des défauts SOAP PHP WSDL : échec du chargement de l'entité externe
Lorsque vous essayez d'établir une connexion SOAP à l'aide de PHP, vous pouvez rencontrer l'erreur « ERREUR SOAP : analyse WSDL : chargement impossible à partir de [URL] : échec du chargement de l'entité externe [URL] ». Cette erreur indique que le client SOAP ne parvient pas à accéder au fichier WSDL référencé dans le constructeur du client.
Étapes de dépannage :
<code class="php">$opts = array( 'ssl' => array( 'ciphers' => 'RC4-SHA', 'verify_peer' => false, 'verify_peer_name' => false ) ); $params = array( 'encoding' => 'UTF-8', 'verifypeer' => false, 'verifyhost' => false, 'soap_version' => SOAP_1_2, 'trace' => 1, 'exceptions' => 1, 'connection_timeout' => 180, 'stream_context' => stream_context_create($opts) ); $wsdlUrl = $url . '?WSDL'; $oSoapClient = new SoapClient($wsdlUrl, $params);</code>
Remarque : La désactivation de la vérification SSL constitue un risque pour la sécurité et ne doit pas être utilisée dans les environnements de production.
<code class="php">ini_set("soap.wsdl_cache_enabled", "1"); ini_set("soap.wsdl_cache_ttl", "86400"); // 24 hours</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!