PHPBrewでPHPとOpenSSLをアップデートしてみる
自分のMac環境にてPHPのOpenSSLライブラリを1.0.1i以上にバージョンアップする必要があったため、PHPBrewを利用してアップデートを行いました。
OpenSSLをアップデートするにはどちらにせよPHPを再コンパイルする必要があるのでこの方法が簡単だと思います。
事前準備
Homebrew
OpenSSLをアップデートする際にHomebrewを使用します。
以下のコマンドでインストールしましょう。
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install”
OpenSSLのアップデート
OpenSSLのバージョンを調べて最新版へアップグレードします。
OpenSSLのパスを確認
$ which openssl
現在のOpenSSLのバージョンを確認
$ openssl version
OpenSSLをアップグレード
$ brew upgrade openssl
アップデートしたOpenSSLにリンク
$ brew link openssl --force
OpenSSLのバージョン確認
$ openssl version
ここまででMac環境のOpenSSLは最新のものになっていると思います。
PHPのインストール
PHPビルドに必要なパッケージ
PHPをビルドするするために必要なパッケージをインストールします。
$ brew install automake autoconf curl pcre re2c mhash libtool icu4c intltool gettext jpeg libxml2 mcrypt openssl gmp libevent
インストールしたいくつかのパッケージをリンクしておきます。
$ brew link curl --force
$ brew link icu4c --force
$ brew link libxml2 --force
$ brew link openssl --force
PHPBrewをインストール
$ curl -L -O https://github.com/phpbrew/phpbrew/raw/master/phpbrew
$ chmod +x phpbrew
$ mv phpbrew /usr/local/bin/phpbrew
PHPBrewを初期化
$ phpbrew init
次の行を.bashrc または .zshrc ファイルに追加し、ターミナルを再起動します。
source $HOME/.phpbrew/bashrc
PHPをインストール
インストールできるバージョンを一覧表示します。
$ phpbrew known
インストールしたいバージョンを指定してインストールします。
$ phpbrew install 5.6.19 +default
+default は variants という記法で、configure オプションを指定するのに使います。有効な variants は phpbrew list --variants コマンドで確認できます。
インストールエラーが出た場合
エラーが出た場合、エラーメッセージがでます。
ほとんどは必要なパッケージが足りてなかったりするエラーなので、上のパッケージインストールコマンドを参考にインストールした後、再度PHPのインストールを開始してください。brew linkも同時に行ってください。
PHPのバージョンを切り替える
PHPのインストールが完了したらそのバージョンへ切り替えなければいけません。
$ phpbrew switch 5.6.19
ここまできたらPHPをビルドした際に新しいOpenSSLを利用しているためPHPの環境でも最新バージョンが適応されていると思います。
$ php -i | grep OpenSSL
OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.0.2g 1 Mar 2016
OpenSSL Header Version => OpenSSL 1.0.2g 1 Mar 2016
OpenSSL support => enabled
以上でPHPのインストール及びOpenSSLのアップデートは完了です。
参考記事
http://www.karakaram.com/mac-install-phpbrew
http://blog.yukarien.com/tech/openssl-versionup/
Author And Source
この問題について(PHPBrewでPHPとOpenSSLをアップデートしてみる), 我々は、より多くの情報をここで見つけました https://qiita.com/yamshta/items/e9f97cf281fa02c4596f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .