使用 openSSL 安装 Apache

使用 openSSL 安装 Apache

你好,我正在安装带有开放 SSL 的 httpd-2.0.63。SSL 版本是 OpenSSL 1.0.0a

命令是:

./configure --prefix=/usr/LBalancer2/apache --enable-so --enable-ssl --with-ssl=/usr/LBalancer2/ssl

制作

但是此步骤出现以下错误:

ssl_engine_init.c:在函数‘ssl_init_ctx_protocol’中:

ssl_engine_init.c:391:警告:赋值丢弃指针目标类型的限定符

ssl_engine_init.c:397:警告:赋值丢弃指针目标类型的限定符

ssl_engine_init.c:在函数“ssl_init_ctx_verify”中:

ssl_engine_init.c:534:错误:‘STACK’未声明(在此函数中首次使用)

ssl_engine_init.c:534:错误:(每个未声明的标识符仅报告一次

ssl_engine_init.c:534:错误:对于它出现的每个函数。)

ssl_engine_init.c:534:错误:')' 标记前应有表达式

ssl_engine_init.c:在函数‘ssl_init_FindCAList’中:

ssl_engine_init.c:1109:警告:条件表达式中的指针类型不匹配

make[3]: *** [ssl_engine_init.lo] 错误 1

make[3]: 离开目录 `/home/arosys/Softwares/httpd-2.0.63/modules/ssl'

make[2]: *** [全递归] 错误 1

make[2]:离开目录“/home/arosys/Softwares/httpd-2.0.63/modules/ssl”

make[1]: *** [全递归] 错误 1

make[1]:离开目录“/home/arosys/Softwares/httpd-2.0.63/modules”

make:*** [全递归] 错误 1

我不知道该怎么做。

任何人都可以帮忙。

谢谢

答案1

Apache 2.0/2.2 与 OpenSSL 1.0.0 不兼容,请参阅错误报告:

您应该使用 OpenSSL 0.9.8。

编译后,你将得到一个名为:mod_ssl.so 的模块

您可以使用 ldd 来检查使用了哪个 ssl 库:

$ ldd mod_ssl.so
linux-gate.so.1 =>  (0xb7f2a000)
libssl.so.0.9.8 => /usr/lib/i686/cmov/libssl.so.0.9.8 (0xb7eac000)
libcrypto.so.0.9.8 => /usr/lib/i686/cmov/libcrypto.so.0.9.8 (0xb7d59000)
libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb7d3f000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7be4000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7be0000)
libz.so.1 => /usr/lib/libz.so.1 (0xb7bcb000)
/lib/ld-linux.so.2 (0xb7f2b000)

Apache.org 有关于如何配置 Web 服务器的出色文档:http://httpd.apache.org/docs/2.1/ssl/ssl_howto.html

答案2

我最好的猜测是缺少 openssl 的标头,您确定它们在 /usr/LBalancer2/ssl 中退出,检查 configure 命令的输出以确保已拾取 openssl 标头。

相关内容