【问题标题】:How to update OpenSSL version from 0.9.8zg to 1.0.2e如何将 OpenSSL 版本从 0.9.8zg 更新到 1.0.2e
【发布时间】:2016-04-03 18:39:28
【问题描述】:

在装有 El Capitan 的 MacBook Pro 中,我有 Apache Apache/2.4.16 (Unix) 和 OpenSSL/0.9.8zg,我需要更新到更高版本。我尝试从 brew 更新 openssl 并构建它。我从here下载了最后一个版本,然后我做了:

  • ./配置 darwin64-x86_64-cc

  • 制作

  • 进行测试

  • 进行安装

一切似乎都很好,但是当我运行 Apache 并查看 phpinfo(); 输出时,我发现使用的版本仍然是 OpenSSL/0.9.8zg。 你知道如何解决这个问题吗?

更新

今天,2016 年 7 月 21 日,有一个带有 openssl 1.0.2 的 MAMP 4 预发布

https://www.mamp.info/en/pre-release.html

【问题讨论】:

  • 你可以使用“pmap”查看Apache的进程中附加了哪个openssl库
  • @rkosegi 我已经运行了你的命令(在 Mac OS X 中是`vmmap pid_httpd),这就是我得到的:
  • __DATA 00000001052f6000-00000001052f8000 [ 8K] rw-/rwx SM=COW /usr/libexec/apache2/mod_ssl.so __DATA 00000001052f8000-00000001052fa000 [ 8K] r /apache2/mod_ssl.so __DATA 00007fff74cf4000-00007fff74cfa000 [ 24K] rw-/rwx SM=COW /usr/lib/libssl.0.9.8.dylib
  • 安装 Macports。它将修改您的路径,以便 Macport 二进制文件首先在路径上。然后,使用port install openssl 安装 openssl。它将安装到/opt/local/bin。您不能更新位于 /usr/bin/usr/lib 的 OpenSSL,因为它们二进制兼容。
  • @Lory - 是的,当然会。你不能以你试图做的方式换掉东西。没有二进制兼容性。如果你试图强制它,它会导致内存错误和无法解释的崩溃。相反,也可以通过 Macports 安装 Apache。然后,禁用 OS X 的内置 Apache 并在 Macport 的/opt/local/bin 中使用您的版本。 Macport 的配置文件将位于/opt/local/etc, IIRC。我一直在 OS X 上使用 OpenSSH 服务器做类似的事情。

标签: macos apache ssl openssl


【解决方案1】:

您似乎已经安装了新版本的 openssl,但您并没有指向它。只需创建一个指向您的二进制文件的软链接。 我不知道 mac 文件系统,但我可以帮助你使用 linux 文件系统。概念是一样的。

试试 :-

mv /path/to/current/openssl /home/user
ln -s /path/to/new-openssl-binary/ /path/to/current/openssl

你可以用这个linux命令whereis openssl检查你的路径

使用openssl version 命令检查您的openssl 版本。

【讨论】:

  • 感谢您的友好建议。不幸的是,我已经尝试过创建一个新的合成链接,但没有成功。 :( 我想问题实际上是构建 Apache 的 openssl 版本。而且新的 Mamp Pro 仍然使用 openssl 0.9.8 但我正在为 ios 9 开发这就是为什么我需要最新版本...
  • 在 /usr/bin 我有两个可执行文件: openssl(版本 1.0.2d),如你所说创建的;和 openssl_OLD (version 0.9.8zg) 但这不起作用...它仍然使用旧版本..
  • 这就是我所做的:sudo ln -s /usr/local/Cellar/openssl/1.0.2d_1/bin/openssl /usr/bin/openssl
  • 现在您有了新的 openssl 版本,但 apache 仍在使用旧的 openssl 版本。这是问题吗?
  • 此链接apple.stackexchange.com/questions/130481/… 的答案可能会对您有所帮助
猜你喜欢
  • 2016-07-29
  • 2018-02-06
  • 1970-01-01
  • 2015-07-19
  • 1970-01-01
  • 1970-01-01
  • 2020-03-06
  • 2018-02-07
  • 2021-11-09
相关资源
最近更新 更多