6

私は Mac OS X 10.6.8 で MAMP 2.1 を使用しています - これには PHP 用の OpenSSL エクステンションが付属していますが、バージョン 0.9 のみです - 1.0 にアップグレードする必要があります - しかし、そのようなタスクをどのように実行するかわかりません。誰でも助けることができますか?

4

1 に答える 1

4

ここから入手したこれらの指示に従うことができます

アップグレード手順

1) XCode コマンド ライン ツールがインストールされていることを確認します。

cURL をアップグレードするには、C コンパイラとその他のライブラリが必要になります。したがって、このドキュメントの各ステップで引き続き使用するターミナルを起動してください。

xcode-select --install

2) Homebrew の OpenSSL ライブラリをインストールする

目標は、 http://brew.shが提供する OpenSSL ライブラリに対して cURL をコンパイルすることです。そのため、自作がまだインストールされていない場合は、彼らの Web サイトの指示に従うか、注意して次のコマンドを実行してください。

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

次に、OpenSSL ライブラリをインストールします。

brew install openssl

3) MAMP に含まれる cURL のバージョンを確認する

公式の cURL Web サイト haxx.se から同じバージョンをダウンロードしてインストールするため、使用している cURL のバージョンを確認したいだけです。

/Applications/MAMP/Library/bin/curl-config --version
The command should return with version 7.43.0

次の手順を完了する前に、必ず MAMP を終了してください。

4) cURL ソースをダウンロードする

curl.haxx.se/download の公式サイトから cURL のソース コードをダウンロードするか、直接フェッチします。

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 ファイルやバンドルは含まれていません。独自のソースを見つけるか、このリポジトリ ( https://github.com/lunr/mamp-curl-tls ) から ca-bundle.tgz ファイルをダウンロードして 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

このコマンドは、homebrew の 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

具体的には、Install prefix and ca cert path and ca cert bundle の行を確認し、それらが MAMP のディレクトリを指していることを確認します。

そうである場合は続行します。そうでない場合は、configure コマンドで何かが間違っていました

7) 新しい cURL ライブラリをインストールする

make && make install

8) MAMPを再起動し、OpenSSLのバージョンを確認

MAMP アプリケーションを開き、サーバーを起動します。phpinfo() を使用して、phpinfo() の curl セクションで OpenSSL のバージョンを確認できます。SSL バージョン: OpenSSL/1.0.2g と表示されます。

于 2016-08-24T12:51:13.107 に答える