L'extension openssl est requise pour la protection SSL/TLS
composer create-project flarum/flarum . --stability=beta
J'essaie d'exécuter cette commande, mais elle m'a donné cette erreur.
[RuntimeException]
The openssl extension is required for SSL/TLS protection but is not availab
le. If you can not enable the openssl extension, you can disable this error
, at your own risk, by setting the 'disable-tls' option to true.
J'ai essayé d'ajouter "extension=php_openssl.dll" à "php.ini", mais il a toujours cette erreur
5 réponses
La même erreur m'est venue. Je l'ai corrigé en désactivant TLS pour Composer, ce n'est pas sûr mais j'ai assumé le risque sur ma machine de développement .
, Essayez ceci:
composer config -g -- disable-tls true
Et relancez votre compositeur. Il fonctionne pour moi!
Mais c'est non sécurisé et non recommandé pour votre serveur . Le site officiel dit:
Si la valeur est true, toutes les URL HTTPS seront essayées avec HTTP à la place et aucun chiffrement au niveau du réseau n'est effectué. Activer Ceci est un risque de sécurité et N'est pas recommandé. La meilleure façon est d'activer l'extension php_openssl en php.ini.
Si vous ne voulez pas activer la couche non sécurisée dans votre machine / serveur, alors Configurez votre php pour activer openssl et cela fonctionne également . Assurez-vous que L'extension PHP Openssl a été installée et activez-la sur php.fichier ini.
Pour activer OpenSSL, ajoutez ou trouvez et décommentez cette ligne sur votre php.ini fichier:
Linux/OSx:
extension=php_openssl.so
Windows:
extension=php_openssl.dll
Et Rechargez votre serveur php-fpm / web si nécessaire!
Selon le compositeur référence, il existe deux options: disable-tls
et secure-http
.
nano ~/.composer/config.json
...
{
"config": {
"disable-tls": true,
"secure-http": false
}
}
Alors il se plaint beaucoup:
You are running Composer with SSL/TLS protection disabled.
Warning: Accessing getcomposer.org over http which is an insecure protocol.
Mais il effectue le composer selfupdate
(ou autre).
Alors que l'on ne peut pas simplement "activer SSL dans le php.ini" sous Linux; PHP doit être compilé avec openSSL configuré comme shared
bibliothèque - afin de pouvoir y accéder à partir de la PHP CLI SAPI.
Pour activer openssl allez dans php.ini et activer cette ligne:
extension=php_openssl.dll
Si vous ne voulez pas activer openssl, vous pouvez définir composer ne pas utiliser openssl avec cette commande:
composer config -g -- disable-tls true
Cependant, il s'agit d'un problème de sécurité.
J'ai eu exactement le même problème et je n'ai pas pu trouver de solution, donc après avoir réfléchi et cherché pendant un moment, j'ai pensé que mon PHP.INI n'a apparemment pas regardé dans le bon répertoire pour mes Extensions PHP, donc je suis allé sous:
"répertoire dans lequel résident les extensions chargeables (modules)." Et trouvé ce qui suit:
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
;extension_dir = "ext"
Et simplement supprimé le; en face de "extension_dir = "ext", notez que C'est seulement pour Windows, supprimez le point-virgule devant le premier extension_dir si vous êtes l'exécution d'un système d'exploitation différent.
Je ne sais pas pourquoi le mien n'était pas déjà banalisé, mais c'est juste quelque chose à rechercher si vous avez des problèmes.
Ce problème se produit en raison d'openssl et d'extension director afin de décommenter les extensions ci-dessous dans php.ini
file
extension=php_openssl.dll
extension_dir = "ext"
Ses travaux sur ma machine.