Maison >développement back-end >tutoriel php >Comment résoudre l'erreur PHP « Socket Transport \'ssl\' non activé » ?

Comment résoudre l'erreur PHP « Socket Transport \'ssl\' non activé » ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-18 13:18:02310parcourir

How to Resolve the PHP Error

Résolution de l'erreur "Socket Transport 'ssl' Not Enabled" en PHP

Rencontre de l'erreur "Avertissement : fsockopen() : impossible connectez-vous à ssl://... (Impossible de trouver le transport de socket 'ssl' - avez-vous oublié de l'activer lorsque vous avez configuré PHP ?)" lors de l'utilisation du transport de socket 'ssl' dans PHP indique un problème de configuration. La résolution de cette erreur nécessite une approche méthodique pour garantir que les paramètres appropriés sont configurés.

Décommentation des extensions dans le php.ini

Vérifiez que les extensions suivantes ne sont pas commentées dans le php.ini fichier de configuration :

  • extension=php_openssl.dll
  • extension=php_sockets.dll

Assurer que PHP charge le fichier de configuration

Confirmez que PHP charge le fichier php.ini mis à jour. Vérifiez les journaux d'erreurs pour toute indication indiquant que le fichier n'est pas chargé correctement.

Emplacements corrects des fichiers

Assurez-vous que php_openssl.dll et php_sockets.dll sont placés dans le répertoire correct généralement situé dans le dossier ext de PHP.

Copie des bibliothèques OpenSSL

Pour les systèmes Windows, copiez ssleay32.dll et libeay32.dll dans le dossier PHP principal, le Dossier WINDOWS et le dossier WINDOWS/system32.

Ajout de PHP au chemin Windows

Mettez à jour la variable de chemin Windows pour inclure l'emplacement de votre installation PHP. Cela garantit que PHP peut charger les DLL nécessaires.

Autorisations de fichiers

Vérifiez que tous les fichiers pertinents disposent des autorisations de fichiers appropriées. Assurez-vous que l'utilisateur exécutant PHP dispose des autorisations de lecture et d'exécution sur ces fichiers.

Étapes de dépannage

Pour résoudre le problème en petites parties, envisagez les étapes suivantes :

  1. Désactivez toutes les autres extensions PHP pour isoler le problème des extensions 'ssl' et 'sockets'.
  2. Exécutez PHP à partir de la ligne de commande avec l'indicateur -e pour exécuter un simple 'fsockopen( )' avec le préfixe 'ssl://'. Cela aidera à déterminer si PHP peut établir une connexion SSL.
  3. Utilisez des outils tels que Process Explorer pour surveiller les DLL chargées et vérifier si les DLL OpenSSL nécessaires sont chargées.

Supplémentaire Conseils pour Windows 7 et Xampp

Si vous utilisez Windows 7 avec Xampp, assurez-vous que le fichier php.ini dans C:xamppphp est nommé php.ini au lieu de php.ini-production. De plus, décommentez les lignes 'extension_dir' et 'extension=php_openssl.dll' dans le fichier php.ini.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn