J'ai passé trois heures mais je n'ai rien trouvé; Je ne parviens pas à me connecter à un serveur compatible SSL. Je veux lister ce que j'ai fait:
D'abord vérifié que mon répertoire d'extensions PHP était en ordre; l'extension n'y était pas, php_openssl.dll
Ensuite, j'ai ouvert mon fichier php.ini mais je ne pouvais voir aucune ligne extension = php_openssl.dll à supprimer.
En outre, j'ai cherché sur Google et ai vu des personnes avec le même problème. http://www.apachefriends.org/f/viewtopic.php?p=162623
Cependant, j'ai aussi
OPENSSL_CONF C:/xampp/Apache/bin/openssl.cnf
...
openssl
OpenSSL support enabled
OpenSSL Library Version OpenSSL 0.9.8l 5 Nov 2009
OpenSSL Header Version OpenSSL 0.9.8l 5 Nov 2009
pas de lignes. Que devrais-je faire? S'il vous plaît partager vos suggestions.
Oui, vous devez ouvrir php.ini
et supprimer le point-virgule pour:
;extension=php_openssl.dll
Si vous n'avez pas cette ligne, vérifiez que vous avez le fichier (Dans mon PC est sur D:\xampp\php\ext
) et ajoutez ceci à php.ini
dans la section "Extensions dynamiques":
extension=php_openssl.dll
[PHP_OPENSSL]
extension=php_openssl.dll
C'est la réponse.
Dans xampp, si "extension = php_openssl.dll" n'est pas présent dans votre fichier php.ini, ajoutez-le dans la section "Extensions Windows" de votre fichier php.ini Et redémarrez votre Apache . moi..
J'utilise xampp. Auparavant, j'avais essayé le fichier d'exemple "test_smtp_gmail_basic.php" dans phpMailer (vous pouvez télécharger phpMailer ici: https://github.com/Synchro/PHPMailer ), mais j'ai l'erreur suivante:
Erreur de courrier: L’adresse De suivante a échoué: [email protected]
Après avoir commenté ; extension=php_openssl.dll
dans php.ini, cela fonctionne maintenant.
Vous devrez éditer votre php.ini. C'est 4 étapes faciles.
Trouvez votre fichier php.ini.
$inipath = php_ini_loaded_file();
Activer openssl dans le fichier:
extension=php_openssl.dll
Activer allow_url_fopen
allow_url_fopen = On
Redémarrez Apache et vous avez terminé!
ÉTAPE 1: Sur votre php.ini
, commentez ;extension=php_openssl.dll
ÉTAPE 2: Copiez libeay32.dll et ssleay32.dll à partir du dossier racine PHP et collez-le dans le dossier Apache/bin
ÉTAPE 3: Redémarrez Apache
Les choses ont changé pour PHP> 7. C'est ce que je devais faire pour PHP 7.2.
Étape: 1: Sans commentaire extension=openssl
Étape: 2: Sans commentaire extension_dir = "ext"
Étape 3: Redémarrez xampp.
Terminé.
Explication: (De php.ini)
Si vous souhaitez qu'une extension soit chargée automatiquement, utilisez la syntaxe suivante:
extension=modulename
Remarque: La syntaxe utilisée dans les versions PHP précédentes (extension=<ext>.so
et extension='php_<ext>.dll
) est prise en charge pour des raisons héritées et peut être déconseillée dans une future version majeure PHP. Donc, lorsque cela est possible, passez à la nouvelle syntaxe (extension=<ext>
).
Remarque spéciale: Assurez-vous de définir correctement la directive extension_dir
.