WAMP php розширення opensl активовано, але не завантажено


2

Я встановив WAMP3, і все нарешті пройшло добре. Однак зараз у мене виникає проблема, коли розширення PHP здається активованим, але не завантаженим .

  • 32-бітний WAMP в 64-бітній системі (повинен був підтримувати MSSQL)
  • Apache 2.4.17
  • PHP 5.6.15
  • MySQL 5.7.9 (але, швидше за все, не має значення)

Я встановив OpenSSL 1.0.2g з програми Shining Light Productions і скопіював libeay32.dll, ssleay32.dll і openssl.exe в папку Apain Bin.

Шлях Windows ENV вказує на праві папки та конфігураційні файли.

Очевидно, що php.ini має коментовані рядки для php_openssl.dll (і так, це включає файл php.ini, який використовує apache, а не лише файл CLI). WAMP також показує розширення як активоване .

У phpinfo не існує розділу Opensl або SSL. Однак "OpenSSL / 1.0.2g" відображається під:

  • Версія Apache
  • SERVER_SIGNATURE
  • SERVER_SOFTWARE
  • Версія SSL

Правильний шлях файлу конфігурації OPENSSL є правильним.

Використання var_dump (extension_loaded ('openssl')); у сценарії виводить:

boolean false

Будь-які ідеї, чому розширення можна активувати, але не завантажувати?

Відповіді:


1

Гаразд, тому я гадаю, що це був конфлікт із оригінальним відкритим DLL-файлом PHP 5.6.15 та новими файлами OpenSSL.

Рішення полягало в тому, щоб схопити останню PHP для Windows для PHP 5.6, розпакувати файл і замінити DLL у /php5.6.15/ext на щойно завантажений.

Отже, якщо вам потрібен OpenSSL для роботи з WAMP3, вам потрібно отримати останні файли OpenSSL з SLP, як зазначено в питанні, а потім замінити DLL.


Ні, ви цього не робите. Це прекрасно працює з коробки. Це звучить так, ніби у вас є щось ПАТИ, чого ви не повинні мати. Щоб запустити WAMPServer, у PATH повинно бути НІЩО, що вказує на ВСЕ, що є в \wamp\.....структурі папок. Насправді, якщо на PATH є щось, що має відношення до PHP або APACHE або MYSQL, це спричинить проблеми, дуже подібні до тих, які ви описуєте.
RiggsFolly

Крім того, якщо ви хочете замінити libeay32.dllі ssleay32.dllвам слід помістити їх у \wamp\bin\php\php{version}папку, оскільки перезапуск WAMPServer призведе до того, що SYMLINKS в \wamp\bin\apache\apache{version}\binпапці буде перебудовано, щоб вказати на ці файли серед інших в папці PHP.
RiggsFolly

Так , копіювання libeay32.dllі ssleay32.dllв папці Apache був би миттєво перезаписані , коли ви почали WampServer, інша причина , ваша спроба модернізувати ці завжди невдачу
RiggsFolly
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.