Maison > Article > développement back-end > Que faire si PHP7 ne parvient pas à activer l'extension OpenSSL
Cet article vous présentera la solution à l'échec d'ouverture de l'extension OpenSSL en PHP7. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.
J'ai récemment appris le framework Laravel, j'ai besoin d'activer l'extension OpenSSL de PHP. J'ai essayé de nombreuses méthodes sur Internet en vain. Finalement, après un long moment, j'ai essayé. finalement réussi. Maintenant, je vais écrire mon expérience pour résumer.
Voici mon expérience d'échec :
Tout d'abord, utilisez la méthode la plus populaire sur Internet :
1. Vérifiez d'abord si extension=php_openssl.dll existe en php. ini , s'il existe, supprimez le caractère de commentaire précédent ";", si cette ligne n'existe pas, alors ajoutez extension=php_openssl.dll
2. Dans le répertoire PHP : php_openssl.dll (ce fichier est dans le dossier du fichier ext), les fichiers ssleay32.dll, libeay32.dll 3 sont copiés dans le dossier windowssystem32
3. Redémarrez Apache
À ce stade, la fonction openssl est activée ; .
Évidemment, je n'ai pas réussi, alors j'ai continué à chercher un moyen
Puis j'ai vu quelqu'un sur Zhihu rencontrer le même problème, et je l'ai ensuite résolu, et m'a également dit le problème. méthode, donc je l'ai essayé aussi. Après un moment, la méthode est la suivante :
La personne qui a posé la question a dit que c'était uniquement pour Win7, le mien est Win10, mais je l'ai quand même. je l'ai essayé, au cas où cela réussirait
De toute évidence, cela n'a toujours pas fonctionné, alors j'ai continué à chercher un moyen
Ensuite, j'ai essayé quelques méthodes supplémentaires, mais je n'ai toujours pas réussi. J'ai ensuite pensé à utiliser l'ordinateur de quelqu'un d'autre pour essayer, alors j'ai utilisé l'ordinateur de mon ami pour essayer. Une fois, j'ai supprimé le commentaire devant extension=php_openssl.dll dans php.ini. Les trois fichiers n'ont pas été copiés. Apache et ouvert phpinfo C'était un succès. À ce moment-là, mon cœur était brisé. Pourquoi le mien ne fonctionnait-il pas ? Je n'avais d'autre choix que de continuer. Finalement, j'ai combiné les parties liées à SSL du fichier de configuration PHP php.ini des deux ordinateurs et du fichier de configuration Apache http. .conf. En comparaison, j'espère pouvoir trouver le problème. Enfin, j'ai trouvé une petite différence. J'ai trouvé que LoadModule ssl_module modules/mod_ssl.so était commenté dans mon http.conf, alors que le sien n'était pas commenté. Supprimez immédiatement le commentaire, redémarrez Apache, ouvrez phpinfo, recherchez OpenSSL et trouvez trois autres enregistrements de recherche, mais il n'est toujours pas activé. À ce stade, je n’avais pas d’autre choix, alors j’ai continué mes recherches. Le travail acharné a porté ses fruits et j’ai finalement réussi.
Voici la dernière méthode réussie :
J'ai vu un article sur certains problèmes auxquels il faut prêter attention lors de la mise à niveau de php5 vers php7, y compris celui-ci :
Lors du redémarrage d'Apache, il est signalé que les bibliothèques d'extensions curl et openssl n'ont pas pu se charger (le journal d'Apache signalera une erreur)
Vous pouvez copier et remplacer les fichiers libeay32.dll et ssleay32.dll dans Apachebin répertoire et redémarrez Apache
Je l'ai réessayé et cela a réussi, donc ma méthode réussie devrait être de supprimer les commentaires sur l'extension openssl dans php.ini, de déplacer les deux fichiers ci-dessus et de redémarrer Apache.
Remarque : lors de la copie de deux fichiers dans le répertoire Apachebin, il est préférable de sauvegarder les deux fichiers dans le répertoire d'origine à l'avance. Si une erreur d'écrasement se produit, fermez simplement Apache.
L'environnement de chacun peut être légèrement différent, le contenu ci-dessus est uniquement à titre de référence.
Apprentissage recommandé : Tutoriel vidéo php
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!