Расширение OpenSSL отсутствует в Windows при установке Composer

Расширение OpenSSL отсутствует в Windows при установке Composer

При установке Composer для PHP я получаю следующее сообщение:

Расширение openssl отсутствует, что означает, что защищенные передачи HTTPS невозможны. Если возможно, вам следует включить его или перекомпилировать php с --with-openssl

Как решить эту проблему?

решение1

У @RiggsFolly правильная идея.

Кроме того, мне пришлось:

  1. Копировать php.ini-development в php.ini
  2. Раскомментируйте extension=php_openssl.dllстроку, как описано
  3. Раскомментируйте эту строку: extension_dir = "ext"
  4. Конечно, убедитесь, что вы нашли php_openssl.dll в этом каталоге расширений.

решение2

Если вы установили напрямую из исполняемых файлов php.net для Windows, то у установки нет активного php.iniфайла! Вы можете подтвердить это с помощью php -iniкоманды в консоли, она говорит, C:\Windowsчто на самом деле нет файла ini.

Сначала вам следует переименовать один из файлов php.ini-developmentили php.ini-productionв php.ini, а затем раскомментировать расширение (т. е. удалить точку с запятой перед extension=php_openssl.dllв этом файле).

решение3

Я пробовал установить переменную окружения, но безуспешно. Однако я попробовал установить двоичный файл Windows изhttps://slproweb.com/products/Win32OpenSSL.htmlи он сразу же начал работать (используя Xampp, если это имеет значение...)

решение4

Все, что вам нужно сделать, это активировать расширение openssl в вашем php.ini, удалив ;комментарий из строки

;extension=php_openssl.dll

К

extension=php_openssl.dll

Внимание, обычно существует 2 файла php.ini, один в папке apache\binи один в \phpпапке. Отредактируйте тот, что в \php\php.iniпапке, так как он управляет PHP CLI.

Связанный контент