2

Apache 2.2.16 目前是 HTTP Server 的“最佳可用版本”。我对源代码进行了一些更改,需要使用 OpenSSL 重新编译。我的问题是,我应该使用 OpenSSL 0.9.8o 还是 OpenSSL 1.0.0a?后者是较新的主要版本,但 Apache 在其二进制产品中将 HTTPD 2.2.16 与 OpenSSL 0.9.8o 结合在一起。请参阅下载页面上的“Win32 Binary 包括 OpenSSL 0.9.8o(MSI 安装程序)” 。

这里几乎没有关于 Apache 的决定的文档。

4

2 回答 2

1

似乎最好使用与您正在使用的原始 Apache 版本一起使用的相同版本的 OpenSSL。对特定版本的 OpenSSL 可能存在某种依赖性的可能性很小(可能非常小但可能非零)。例如,更改日志确实表明至少存在一个错误修复,如果应用程序解决它可能导致需要更改(在该更改日志页面上搜索“旧错误行为”)。我只是以此为例;我完全不知道 Apache 是否甚至使用 BIO_pop 和 BIO_push。但是,如果您在不了解更多使用方式的情况下更改版本,这种类型的事情可能会造成困难。

请注意,OpenSSL 的 v0.9x 版本是真正的发行版并且被广泛使用。这不应该只是因为它早于 v1.x 而成为问题。

于 2010-09-13T21:36:01.097 回答
1

我也在 Apache HTTPD 用户列表中提出了这个问题。他们说 Windows 软件包是由第三方组装的,任何一个版本都可以使用。所以我们将继续推进 1.0.0a。

来自 Apache 用户列表:

Apache HTTP Server 2.2.16 应该针对 OpenSSL 0.9.8 或 OpenSSL 1.0 构建。让我们知道您是否有其他体验。  

OpenSSL 0.9.8o 在他们的二进制产品中。请参阅下载页面上的“包含 OpenSSL 0.9.8o(MSI 安装程序)的 Win32 二进制文件”。

Windows 二进制文件不是 Apache 软件基金会发布的,而是免费提供的。构建它的人决定包含 0.9.8o 版本,这完全取决于他。

于 2010-09-14T16:04:35.500 回答