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

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

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

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

3 ответа

@RiggsFolly имеет правильную идею.

Дополнительно мне пришлось:

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

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

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

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

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

;extension=php_openssl.dll

к

extension=php_openssl.dll

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

Другие вопросы по тегам