升级步骤
1) 确保您已安装 XCode 命令行工具。
我们将需要一个 C 编译器和其他库来升级 cURL。
因此,启动一个终端,您将继续在每个步骤中使用它
本文档。
xcode-select --install
2) 安装 Homebrew 的 OpenSSL 库
目标是针对 OpenSSL 库编译 cURL
http://brew.sh,所以如果你还没有安装自制软件,请关注
他们网站上的说明,或者谨慎地运行以下命令:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
接下来,安装 OpenSSL 库:
brew install openssl
3) 检查 MAMP 中包含的 cURL 版本
我们只是想确认我们使用的是哪个版本的 cURL,因为我们
想从官方 cURL 下载并安装相同的版本
网站,haxx.se
/Applications/MAMP/Library/bin/curl-config --version
The command should return with version 7.43.0
确保在完成后续步骤之前退出 MAMP!
4) 下载 cURL 源
从官方网站下载 cURL 的源代码
curl.haxx.se/download或直接获取:
cd ~/Downloads
wget https://curl.haxx.se/download/curl-7.43.0.tar.gz
接下来,解压 tarball 和 cd 到工作目录
tar xzvf curl-7.43.0.tar.gz
cd curl-7.43.0
5) 下载 CA / 证书包并解压到 MAMP 中
默认情况下,cURL 不附带任何 CA 文件或捆绑包。你可以
找到您自己的源代码,或从这里下载 ca-bundle.tgz 文件
存储库(https://github.com/lunr/mamp-curl-tls)并提取到
MAMP:
tar xzvf ca-bundle.tgz -C /Applications/MAMP
6) 编译 cURL
在工作目录下执行如下配置命令
cURL源代码:
./configure --prefix=/Applications/MAMP/Library --with-ssl=/usr/local/Cellar/openssl/1.0.2g --with-ca-path=/Applications/MAMP/etc/openssl/certs --with-ca-bundle=/Applications/MAMP/etc/openssl/certs/ca-bundle.crt
这个命令是专门针对自制软件编写的
OpenSSL 库和您在第 5 步中下载的 CA 包。您可以
如果您愿意,可以添加您自己的选项。
命令完成后,您应该得到完全一样的输出
这个:
curl version: 7.43.0
Host setup: x86_64-apple-darwin15.4.0
Install prefix: /Applications/MAMP/Library
Compiler: gcc
SSL support: enabled (OpenSSL)
SSH support: no (--with-libssh2)
zlib support: enabled
GSS-API support: no (--with-gssapi)
TLS-SRP support: enabled
resolver: default (--enable-ares / --enable-threaded-resolver)
IPv6 support: enabled
Unix sockets support: enabled
IDN support: no (--with-{libidn,winidn})
Build libcurl: Shared=yes, Static=yes
Built-in manual: enabled
--libcurl option: enabled (--disable-libcurl-option)
Verbose errors: enabled (--disable-verbose)
SSPI support: no (--enable-sspi)
ca cert bundle: /Applications/MAMP/etc/openssl/certs/ca-bundle.crt
ca cert path: /Applications/MAMP/etc/openssl/certs
LDAP support: enabled (OpenLDAP)
LDAPS support: enabled
RTSP support: enabled
RTMP support: no (--with-librtmp)
metalink support: no (--with-libmetalink)
HTTP2 support: disabled (--with-nghttp2)
Protocols: DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS LDAP LDAPS POP3 POP3S RTSP SMB SMBS SMTP SMTPS TELNET TFTP
具体来说,查看安装前缀和 ca 证书路径和 ca 行
cert bundle 并确认它们指向 MAMP 的目录。
如果是,请继续,否则,配置有问题
命令
7) 安装新的 cURL 库
make && make install
8) 重启 MAMP 并确认 OpenSSL 版本
打开 MAMP 应用程序并启动服务器。您可以使用 phpinfo()
在 phpinfo() 的 curl 部分下确认 OpenSSL 版本。它
应阅读 SSL 版本:OpenSSL/1.0.2g