composer create-project flarum/flarum . --stability=beta
Я пытаюсь запустить эту команду, но это дало мне эту ошибку.
[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.
Я попытался добавить «extension = php_openssl.dll» в «php.ini», но он все еще получил эту ошибку
Такая же ошибка возникла у меня. Я исправил это, отключив TLS для Composer, это не безопасно, но я принял на себя риск на моей машине разработки .
попробуй это:
composer config -g -- disable-tls true
и снова запустите свой композитор. Это работает для меня!
Но это небезопасно и не рекомендуется для вашего сервера . Официальный сайт говорит:
Если установлено значение true, все URL-адреса HTTPS будут проверяться с использованием HTTP вместо этого, и не будет выполнено шифрование на уровне сети. Включение этого является угрозой безопасности и НЕ рекомендуется. Лучше всего включить расширение php_openssl в php.ini.
Если вы не хотите включать незащищенный слой на свой компьютер / сервер, тогда настройте свой php, чтобы включить openssl, и он также работает . Убедитесь, что расширение PHP Openssl установлено и включено в файл php.ini.
Чтобы включить OpenSSL, добавьте или найдите и раскомментируйте эту строку в файле php.ini:
Linux / OSx:
extension=php_openssl.so
Окна:
extension=php_openssl.dll
И при необходимости перезагрузите php-fpm / web-сервер!
согласно справочнику композитора есть два релевантных варианта: disable-tls
и secure-http
.
nano ~/.composer/config.json
…
{ "config": { "disable-tls": true, "secure-http": false } }
то он много жалуется:
You are running Composer with SSL/TLS protection disabled. Warning: Accessing getcomposer.org over http which is an insecure protocol.
но он выполняет composer selfupdate
(или что-то еще).
в то время как нельзя просто «включить SSL в php.ini» в Linux; PHP необходимо скомпилировать с помощью openSSL, настроенного как shared
библиотека, чтобы иметь возможность получить к нему доступ из PHP CLI SAPI .
Чтобы включить openssl, перейдите в php.ini и включите эту строку:
extension=php_openssl.dll
если вы не хотите включить openssl, вы можете установить, чтобы композитор не использовал openssl с помощью этой команды:
composer config -g -- disable-tls true
однако это проблема безопасности.
У меня была одна и та же проблема, и я не мог найти решение, поэтому, подумав и искал какое-то время, я понял, что мой PHP.INI, по-видимому, не смотрел в правильный каталог для моих PHP-расширений, поэтому я пошел:
«Каталог, в котором находятся загружаемые расширения (модули)». И нашел следующее:
; http://php.net/extension-dir ; extension_dir = "./" ; On windows: ;extension_dir = "ext"
И просто удалил; infront из "extension_dir =" ext ", обратите внимание, что это только для Windows, удалите точку с запятой перед первой extension_dir, если вы используете другую операционную систему.
Я понятия не имею, почему моя уже не была отмечена знаком, но это просто то, что нужно искать, если у вас проблемы.
Эта проблема возникает из-за openssl и директора расширений, поэтому раскомментируйте ниже расширения в файле php.ini
extension=php_openssl.dll extension_dir = "ext"
Его работы на моей машине.