Вопрос: Apache SSL на 64-битной Windows (не действительное приложение Win32)


Я создал переносную (относительные пути) установку Apache. Он отлично работает на моей 32-битной системе, но когда я пытаюсь запустить его в 64-разрядной системе, он дает следующую ошибку:

>httpd -t
httpd: Syntax error on line … of …/httpd.conf: Cannot load …/modules/mod_ssl.so into server: %1 is not a valid Win32 application.

Если я прокомментирую строку, которая включает SSL.conf, то сервер работает на 64-битной системе, но, конечно, без поддержки SSL.

Я попытался найти это, но не могу найти ничего полезного. Кто-нибудь знает, как заставить Apache использовать SSL в 64-разрядной системе (желательно таким образом, что это совместимо с 32-разрядной системой)?


5
2018-02-11 17:29


Источник




Ответы:


С помощью Монитор процессов, Я заметил, что файлы и записи в реестре доступа, которые Apache делает при загрузке.

Я заметил, что httpd загружает файл libeay32.dll в конце трассы (как раз перед тем, как он выйдет из строя). Я попробовал поставить копию libeay32.dll из 64-разрядный пакет Apache Я получил от ApacheLounge в Apache bin , но он все равно дал ту же ошибку. (Я полагаю, это не должно быть неожиданностью, потому что файл, который он ранее загружал, был уже 64-битной копией из некоторой папки, которая находится в PATHГде установлен один из 64-разрядных драйверов ноутбука.)

Затем я 32-битный копия libeay32.dll (а также  ssleay32.dll), что я получил из стандартного пакета, и voilà! Apache работает с поддержкой SSL в 64-битной системе! Более того, поскольку копия libeay32.dll 32-бит, он все еще работает на 32-битной системе без изменений (т. е. не обнаруживать систему и заменять файлы или даже хак-файлы).

(Я рад, что я поставил сообщение об ошибке в заголовок вопроса, потому что он, надеюсь, поможет направить других с этой проблемой, с которыми я боролся несколько месяцев, на эту страницу, где они наконец смогут найти решение.)


10
2018-02-11 17:49



У меня была аналогичная проблема, и в итоге я использовал libeay32.dll (and ssleay32.dll из 32-разрядной версии PHP 5.5 (в моем случае мне пришлось заменить те, которые поставлялись с PHP v5.3 с теми, которые были включены в v5.5) - Costa
Полезно, я также загрузил 32-битную версию и работает для меня. - asifaftab87
эта же проблема с mod_ssl и php 5.6 на wamp разрешает ее копированием файлов libeay32.dll и ssleay32.dll из пакета php 7.0.4. - Nikita
Я скопировал libesy а также ssleay из php7 папку для apache / bin, и это решило мою проблему. - Exlord


У нас есть 64-битный mod_jk.so, который можно скачать с Вот по версии. Надеюсь, это полезно.


0
2017-12-17 05:33