Я хочу обновить свой локальный сервер до php 7.1. Когда я пытаюсь сделать это, все идет нормально, кроме openssl.
С php <= 5.30 openssl работает отлично, но если я перейду на php 7.1, openssl отключится.
Я думаю, что все настройки в порядке (http.conf, php.ini), потому что те же настройки работают с другими версиями php.
С php 7.1 я получаю такое сообщение: Не удалось найти обертку "https" - вы забыли включить ее при настройке PHP
Я попытался скопировать libeay32.dll, ssleay32.dll, openssl.exe как в папку Windows, так и в папку apache / bin. Я попытался добавить php dir в путь к Windows. Я пробовал все возможные способы, которые я читал на разных страницах, но ничего не изменилось.
Кто-нибудь может мне помочь?
Я была такая же проблема. Поэтому я скопировал эти файлы из моей «старой» папки PHP 5.6 в папку PHP (7.2) (или для вас, может быть, в папку Windows или где бы вы ни находились). Файлы не были доступны в моей установке PHP 7.2. И работает отлично.
Я столкнулся с той же проблемой, и мне удалось ее исправить. Я обнаружил, что DLL полагается на файлы libeay32.dll
и ssleay32.dll
и решил, что PHP7.1, скомпилированный с VC14, может быть проблемой несовместимости. Просматривая свой PATH, я обнаружил, что каталог C:\Program Files (x86)\Intel\iCLS Client\
был первым каталогом, в котором был размещен файл с устаревшей версией (1.0.0.17), как показано ниже (слева - Intel, справа - тот, который связан с PHP);
Хотя я полагал, что это может сломать клиент iCLS, вызвав там ошибку несовместимости, я пошел на риск и переместил эти каталоги ниже каталога PHP, что (после перезапуска Apache) решило проблему.