12
votes

LARAVAVILE UNDEFINÉE FONCTION OPENSSL_ENCRYPT ()

J'utilise laravel5.1 et cela fonctionne bien sur PHP CLI. Mais je publie mon porjo à Apache (version == 2.4), le problème est arrivé.

FatalEroreception dans Crypter.PHP Ligne 67:
Appelez à la fonction non définie openssl_encrypt ()


2 commentaires

Pourrait être un problème de configuration dans apache ou php.ini , pas sûr de cependant


Vous manquez l'extension PHP OpenSSL → php.net/manual/fr/openssl.installation .php


9 Réponses :


24
votes

Vous assurez d'abord que vous avez installé le Extension OpenSSL (repéré par Decezze ), alors:

  1. Allez à votre php.ini fichier
  2. Retirez le point-virgule avant Extension = php_openssl.dll
  3. redémarrez votre Apache

    Je m'attends à ce que cela soit le problème.


1 commentaires

Dans mon cas particulier, l'extension php_openssl.dll n'a pas été chargée car le Directeur des fichiers Binaires PHP n'a pas été défini dans la variable du système PATH Environnement



8
votes

J'ai résolu le même problème en copiant libey32.dll et ssleay32.dll du dossier racine PHP au dossier Apache / Bin, puis redémarré Apache.


0 commentaires

6
votes

Si vous utilisez le serveur WAMP, il se passe. Dans XAMPP Server, il n'est pas nécessaire de noter php_openssl.dll.

Pour résoudre ce problème, retirez le point-virgule avant xxx

in php.ini


0 commentaires

0
votes

J'utilise Wamserver et j'avais le même problème. OpenSSL a été activé dans php.ini, mais il y a un autre ini appelé phpforapache qui a une ligne pour activer OpenSSL. Cela a fonctionné pour moi.


0 commentaires

5
votes

Comme la plupart indiquent, vous devez entraîner une extension OpenSSL dans PHP.ini.

Je me luttais avec la même chose et j'ai réalisé que PHP cherche des extensions dans "C: \ php" , mais la mienne était une installation XAMPP. Pointant extension_dir en php.ini pour corriger le chemin d'extension PHP; Dans mon cas "C: \ Xampp \ php.7 \ ext" a résolu le problème.

espoir que cela aide quelqu'un.


0 commentaires

0
votes

J'utilise NGinx et mon installation NGinx contenait un dossier PHP, quelque chose comme ci-dessous: xxx

i déplacé le nginx ci-dessus dans le répertoire racine de C: \ < / code> et il a résolu le problème.


0 commentaires

2
votes

Suivez les étapes ci-dessous:

  • dans PHP 7.4.3 Dupliquer "php.ini-Development" Fichier et renommez-le "php.ini"
  • Ensuite, retirez les demi-colons devant "extension = openssl" , "extension = mbstring" , et "extension_dir = ext" à l'intérieur du fichier "php.ini".

    Cela a travaillé pour moi et j'espère que cela aide quelqu'un d'autre.


0 commentaires

0
votes
  1. Il suffit d'exécuter la commande du compositeur de mise à jour du répertoire d'installation de Laravel et 02. Assurez-vous que Extension = php_openssl.dll est activé dans php.ini
  2. redémarrez le serveur Apache

0 commentaires

0
votes

sur Windows Ouvrez PHP.ini et changez le chemin où sont localisent PHP ext

extension_dir = "c: \ php \ ext"


0 commentaires