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


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

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

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


2
2017-12-07 08:39


Источник


Вы можете исправить это, перекомпилировав php с помощью --with-opensll вариант. - Hennes
Что касается того, что это такое. OpenSSL - это часть, отвечающая за TLS (думаю, httpS). Он обычно используется для безопасной связи. Первоначально thi sused что-то называлось SSL, но эти cypers уже давно треснули, и в наши дни мы используем TLS, но имя библиотеки не изменилось. - Hennes
попробую, тогда я скажу вам результат! - user3660160
не работал для меня! - user3660160


Ответы:


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

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

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

6
2018-03-11 05:47



Я пропустил Шаг 1. Спасибо, что указали на что-то настолько очевидное и простое - dmeehan


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

;extension=php_openssl.dll

к

extension=php_openssl.dll

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


0
2017-12-07 12:59



ОЧЕНЬ ОШИБКА !! :( - user3660160
Вы уверены, что отредактировали правильный php.ini? Есть ususlly 2 вам нужен тот, который находится в папке php, а не в папке apache - RiggsFolly


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

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


0
2017-07-23 15:57