Apache 2.4.1未定义对`SSLv2_client_method'的引用

iRy*_*ell 6 apache openssl makefile apache2

我之前运行的是apache 2.2.20和openssl 1.0.0e.我安装了openssl 1.0.1,然后下载了apache 2.4.1的tarball并安装了apr 1.4.6和apr-util 1.4.1 --prefix=/usr/local.我配置了apache2:

sudo ./configure --prefix=/usr/local/apache2 --enable-mods-shared=all
--enable-deflate --enable-proxy --enable-proxy-balancer --enable-proxy-http
--enable-rewrite --enable-cache --enable-mem-cache --enable-ssl --enable-headers
--with-mpm=worker --with-included-apr
Run Code Online (Sandbox Code Playgroud)

但跑完后sudo make我得到一个错误:

httpd-2.4.1/support/ab.c:2227: undefined reference to `SSLv2_client_method'
Run Code Online (Sandbox Code Playgroud)

导致此错误的原因是什么?如何更正错误?

Jon*_*Lin 6

您可能已经禁用SSLv2构建openssl,某些发行版已禁用(Debian,从7.0开始--Wheezy-是一个).查看源代码,看起来如果定义OPENSSL_NO_SSL2预处理程序标志,apache将不会调用SSLv2_client_method()函数.