apache - 升级到 Apache 2.4.27 后无法加载 mod_ssl.so - undefined symbol : SSL_get_srp_userinfo

标签 apache ssl

我正在尝试从 2.4.26 升级到 Apache 2.4.27。 configure、make 和 make install 都已完成,但是当我尝试弹回 Apache 时,我得到以下信息:

httpd: Syntax error on line 145 of /usr/local/apache2/conf/httpd.conf: Cannot load modules/mod_ssl.so into server: /usr/local/apache2/modules/mod_ssl.so: undefined symbol: SSL_get_srp_userinfo

OpenSSL版本为openssl-1.0.2l,运行安装:

./config --prefix=/usr/local/ --openssldir=/usr/local/openssl enable-tlsext shared
make && make install

Apache 2.4.27 是通过运行安装的:

./configure --enable-modules=all --enable-ssl --with-included-apr --enable-mod-proxy --with-included-apr-util
make && make install

我以前遇到过几次同样的问题,答案是确保 LD_LIBRARY_PATH 设置为 /usr/local/lib64:/usr/local/lib 但事实并非如此这次帮忙我试过用这个集合配置和编译,但没有 LD_LIBRARY_PATH,都没有帮助。

mod_ssl.so 看起来是针对 yum 安装的 OpenSSL 版本进行编译的:

[root@localhost httpd-2.4.27]# yum list installed  |grep -i ssl
openssl.i686                     1.0.1e-57.el6             @ol6_latest
openssl.x86_64                   1.0.1e-57.el6             @ol6_latest
openssl-devel.x86_64             1.0.1e-57.el6             @ol6_latest
pyOpenSSL.x86_64                 0.13.1-2.el6              @ol6_latest

ldd /usr/local/apache2/modules/mod_ssl.so
        linux-vdso.so.1 =>  (0x00007ffd012ba000)
        libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007f3258fb7000)
        libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007f3258bd1000)

我已经尝试了很多不同的选项(太多了,无法在此处列出),例如 --with-ssl=/usr/local/openssl, --enable-ssl=shared 作为以及在 config.nice 中设置 LDFLAGS="-L/usr/local/lib64",但仍然没有乐趣。

有什么想法吗?

最佳答案

最后通过 https://serverfault.com/questions/587267/upgrade-to-apache-2-4-9-opensssl-error-ssl-get-srp-userinfo 的评论解决了这个问题.原来设置 LDFLAGS 就是答案:

LDFLAGS="-L/usr/local/lib64"; export LDFLAGS
"./configure" \
"--enable-so" \
"--with-included-apr" \
"--enable-ssl" \
"--with-ssl=/usr/local/openssl" \
"LDFLAGS=-L/usr/local/lib64" \
"$@"

关于apache - 升级到 Apache 2.4.27 后无法加载 mod_ssl.so - undefined symbol : SSL_get_srp_userinfo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46225540/

相关文章:

共享 SSL 中的 Codeigniter

类似于路由器登录的 PHP 用户身份验证

apache - 在一个谷歌云实例上使用多个 SSL 证书

ssl - 在浏览器中生成客户端证书并在服务器上签名

ssl - 为什么 fabric-ca 作为自签名证书启动?

java - 使用 wsimport 时出现安全异常

python - Django - 使用自定义的 login_required 装饰器保护 Apache 提供的媒体文件

java - 导入 org.apache.commons.net.telnet.TelnetClient;

php - 为什么只有一台服务器抛出错误 "Array to String Conversion"?

python - 如何使用urllib3下载服务器SSL证书?