Назад | Перейти на главную страницу

Php 7.1 / Apache 2.4 / Windows - ошибка загрузки Openssl

Я хочу обновить свой локальный сервер до 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) решило проблему.