web-dev-qa-db-fra.com

Comment activer l'extension openssl de PHP pour installer Composer?

J'essaye d'installer Laravel dans la configuration de WAMP. Je reçois un message d'avertissement pour ne pas activer openssl que j'avais déjà fait dans WAMP.

Voici une capture d'écran du message.

enter image description here

110
FirmView

Il est possible que WAMP et Composer utilisent différentes installations PHP. Composer utilisera le PHP défini dans la variable d'environnement PATH

Si vous souhaitez activer l'extension openssl pour installer Composer , vous devez d'abord vérifier l'emplacement de l'installation PHP.

  1. Ouvrez une invite de commande, tapez: echo %PATH%, puis recherchez l'emplacement de votre installation PHP.
  2. Allez à cet emplacement et éditez le fichier nommé: php.ini.
  3. Décommentez la ligne extension=php_openssl.dll en supprimant le point-virgule au début.

Vous êtes maintenant prêt à installer Composer.

112
Rubens Mariuzzo

J'ai résolu mon problème d'une manière différente. Le problème est que l'interface graphique de wamp était trompeuse: elle affirmait que j'avais php_openssl activé .. et que je cliquais sur php.ini sur la même interface utilisateur .. cela montrait en fait que extension=php_openssl.dll était non commenté .. 

Je ne suis pas sûr d'utiliser la même version du composeur de l'OP, mais il vous demande au début de spécifier le php.exe sur lequel vous souhaitez appliquer le compositeur (ce qui garantit essentiellement que personne ne tente d'appliquer le composeur au mauvais exécutable php comme ce qui s’est passé avec l’OP) ..

La façon dont j'ai résolu ce problème était d'aller moi-même à l'installation de php dans le paquet wamp: C:\wamp\bin\php\php5.4.12 et de regarder php.in là-bas… quand je l'ai ouvert, j'ai été choqué que la ligne extension=php_openssl.dll ait été commentée! Je l'ai commenté et cela a bien fonctionné.

enter image description here

60
abbood

J'ai eu le même problème et voici la solution que j'ai trouvée, sur votre php.ini vous devez faire quelques changements:

  1. extension_dir = "ext"
  2. extension = php_openssl.dll

Tout le monde ici parle d’activer l’extension openssl, mais sous Windows, vous devez aussi activer le répertoire extension.

51
Francisco Cabral

Pour le serveur WAMP, le commentaire de "Enrique" a résolu mon problème.

wamp utilise ce php.ini :

c:\wamp\bin\Apache\Apache2.4.4\bin\php.ini

Mais composer utilise PHP à partir de la CLI et lit donc ce fichier:

c:\wamp\bin\php\php5.4.12\php.ini (so you need to enable openssl there)

Pour le compositeur, vous devrez activer l’extension dans

c:\wamp\bin\php\php5.4.12\php.ini

Changement:

;extension=php_openssl.dll 

à

extension=php_openssl.dll
25
user3887814

Si vous faites cela sous Windows sans l’une des piles WAMP, voici comment procéder.

  1. Téléchargez une installation de PHP pour Windows . Généralement, vous souhaiterez une installation non thread-safe. Vous pouvez utiliser des versions 32 bits ou 64 bits
  2. Extrayez le fichier Zip quelque part. Je suggérerais C:\php. Le programme d'installation du compositeur l'a trouvé sans aucune invite supplémentaire
  3. Les dernières versions de PHP pour Windows ne sont pas accompagnées d'un php.ini par défaut. Au lieu de cela, vous verrez deux fichiers, comme indiqué ci-dessous. Renommez un en php.ini ou copiez-le en php.ini.
    • php.ini-développement
    • php.ini-production
  4. Ouvrez votre fichier php.ini et supprimez le point-virgule de cette ligne (vous voudrez peut-être aussi commenter d'autres éléments mais cette ligne est la seule nécessaire pour Composer)

    ;extension=php_openssl.dll
    

Cela devrait être tout ce que vous devez faire. Le programme d'installation de Composer devrait faire tout ce dont vous avez besoin d'ici.

12
Machavity

Vous devez activer "extension = php_openssl.dll" dans les deux fichiers (php et Apache). mon chemin de fichiers pc sont les suivants: 

  1. C:\wamp\bin\php\php5.3.13\php.ini
  2. C:\wamp\bin\Apache\apache2.2.22\bin\php.ini
11

vous devez activer l'extension openssl dans 

C:\wamp\bin\php\php5.4.12\php.ini 

c'est le fichier de configuration php qui a ce type qui a "paramètres de configuration" avec une icône comme celle du pilote.

  1. ouvrez-le soit avec le bloc-notes ou n'importe quel éditeur,
  2. recherchez openssl "votre ctrl + F" ferait l'affaire.
  3. il y a un point-virgule avant l'extension openssl 

    ;extension=php_openssl.dll
    

    retirez le point-virgule et vous aurez 

    extension=php_openssl.dll
    
  4. sauvegardez le fichier et redémarrez votre serveur WAMP après cela.
7
DLoneDeveloper

Il existe deux fichiers php.ini, un pour le développement et un pour la production. Laissez ceux-ci, il y a un autre fichier php.ini pour les paramètres de configuration juste au-dessus d'eux avec un engrenage comme l'icône éditer cela.

6
keneth

C'est une vieille question, mais le problème est le même (avec PHP7) et la solution était finalement très simple. Décommenter la ligne dans php.ini comme dans les autres réponses ne suffisait cependant pas. Je devais le changer de:

;extension=php_openssl.dll

à:

extension=ext/php_openssl.dll

Notez le préfixe ext. La DLL existait déjà, mais se trouvait dans un sous-dossier. Après avoir modifié la configuration, l'installateur du compositeur était heureux.

5
K Cartlidge

Après avoir édité les "bons" fichiers (tous les fichiers php.ini). J'avais toujours le problème. Mon solution était:

  1. Ajout d'une variable système: OPENSSL_CONF

    la valeur de OPENSSL_CONF doit être le fichier openssl.cnf de votre version actuelle de php.

pour moi c'était:

  • C:\wamp\bin\php\php5.6.12\extras\ssl\openssl.cnf

-> Redémarrer WAMP -> devrait fonctionner maintenant

Source: http://php.net/manual/en/openssl.installation.php

3
Mafu

J'utilise le serveur WAMP . En fait, ses fichiers indiquaient que openssl était ouvert . Mais manuellement, je suis allé dans le dossier et j'ai édité le php.ini. après après le redémarrage de WAMP.

2
tharanga

J'ai rencontré le même problème, mais quand je cherchais php.ini et php.exe, j'ai trouvé php.exe dans C:\UwAmp\bin\php\php-5.4.15 lorsque php.ini dans C:\UwAmp\bin\Apache . Je viens de copier php.ini dans C:\UwAmp\bin\php\php-5.4.15 et de ne pas commenter l’extension de ligne = php_openssl.dll et elle a été corrigée.

2
M. K Hossain

C:\wamp\bin\php\php5.3.13

Accédez à la ligne qui lit:

;extension=php_openssl.dll

et supprimez le point-virgule précédant la ligne. Redémarrez les services de votre serveur WAMP (cliquez dans la barre d’icônes> "Redémarrer tous les services".

2
yathavan

Si vous ne pouvez toujours pas résoudre votre problème, jetez un coup d'oeil à cela. C'est peut-être la solution que vous recherchez

Il existe plusieurs fichiers php.ini dans le dossier C:\wamp\bin\php\php x-y-z. Vous pouvez trouver la production, le développement et quelques autres fichiers php.ini. Aucun point d'édition de fichiers de production et de développement. Trouvez le fichier qui est exactement identique à l'image ci-dessous. (Vous pouvez le trouver. Tapez simplement php.ini dans votre barre de recherche et faites une recherche). Ouvrez le fichier et supprimez-le. à partir de l'extension = php_openssl.dll. Enregistrez le fichier et fermez-le. Redémarrez tous les services sur le serveur Wampp. Réinstallez votre compositeur. 

C'est ça. 

enter image description here

1
gihanmu

Pour ceux qui ont le même problème que moi. Après avoir fait toutes les solutions ci-dessus, cela ne fonctionnait toujours pas pour moi. J'ai découvert que uWamp créait le fichier PHP.INI dans le répertoire bin/Apache. J'ai donc dû copier le fichier PHP.INI dans le répertoire d'installation php, c'est-à-dire le répertoire bin/php/phpXXXX. Cela devrait également être où php.exe est que vous avez sélectionné à partir de la configuration du composeur.

J'espère que cela t'aides.

1
Nitro Chummy

Wamp fonctionne avec un autre fichier php.ini situé dans C:\wamp\bin\Apache\Apache2.4.4\bin\php.ini. Vous devez donc rechercher manuellement le bon fichier, c.-à-d. C:\wamp\bin\php\php5.4.12\php.ini. Décommentez la ligne extension = php_openssl.dll et essayez à nouveau d'installer Composer.

1
Dreyfi

Si vous utilisez xampp. Revenez à l'endroit où vous avez choisi le php de ligne de commande que vous voulez utiliser au début de votre installation et sélectionnez le chemin où votre dossier xampp est inclus. Le commentaire un fichier ssl de php_openssl.dll dans votre inp php avec un ';' et votre installation devrait se dérouler sans heurts.

0
ricardo Chitagu