EC-CUBE 2.13.5 のcURLをバージョンアップした時のメモ

More than 1 year has passed since last update.

EC-CUBE 2系を使用した時にcURLのSSL Versionが「NSS」になっていたので、

「OpenSSL」に変更した時のメモを書きます。


現在のcURLのバージョンをチェック

$ curl --version

curl 7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.19.1 Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
Protocols: tftp ftp telnet dict ldap ldaps http file https ftps scp sftp

NSS/3.19.1となっているのでこれを「OpenSSL」に変えます。


openssl関連のモジュールがインストール済みか確認

$ sudo yum info openssl-devel

$ sudo yum info gcc

実行して「Installed Packages」であればインストール済み。

「Available Packages」と表示されていればインストールされていないのでモジュールのインストールをします。


openssl関連のモジュールをインストール

$ sudo yum install openssl-devel

$ sudo yum install gcc

順番はどちらが先でも問題ありません。

「gcc」はcURLをコンパイルする時に必要になります。

(最初コンパイルに失敗しつまづきました)


cURLのダウンロード

http://curl.haxx.se/latest.cgi?curl=tar.bz2

にアクセスしてcURLの最新版のURLを取得します。

$ wget http://curl.mirror.anstey.ca/curl-7.51.0.tar.bz2


configure

$ tar xf curl-7.51.0.tar.bz2

$ cd curl-7.51.0
$ ./configure --enable-libcurl-option

ダウンロードしたファイルを展開して「configure」を実行してmake用のファイルを作成します。


コンパイルとインストール

$ make

$ sudo make install

cURLをインストールします。


ライブラリを登録

$ vi /etc/ld.so.conf.d/curl-x86_64.conf


curl-x86_64.conf

/usr/local/lib


インストールしたcURLをライブラリに登録します。

これをしないとapacheを再起動してもcURLのバージョンが上がりませんでした。


ライブラリの更新

$ ldconfig -v

共有ライブラリの依存関係を更新してcURLを認識させます。


apacheを再起動

$ sudo service httpd restart

apacheを再起動してPHPにも読み込ませます。


cURLのバージョンをチェック

$ curl --version

curl 7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.51.0 OpenSSL/1.0.1e zlib/1.2.3 libssh2/1.4.2
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: IPv6 Largefile NTLM SSL libz

最後にcURLのバージョンが上がったか確認します。

「NSS」が「OpenSSL」に変わりましたね。


参考にさせていただいたサイト

http://qiita.com/maangie/items/4af8b813ed9ddce4a0db

http://kayakuguri.github.io/blog/2016/07/07/curl-openssl-tls/