ionCube Loaderのインストール


a-blog cms を動かすために必要な ionCube Loader のダウンロード方法とインストール方法を説明します。

ionCube Loader のインストール は Ver. 3.0 から不要になりました。

ionCube Loader はお使いのサーバーOSに合わせたファイルをダウンロードする必要があります。サーバーOSの詳細な情報については、サーバー管理者にご確認いただくか、以下の方法によりご確認ください。

サーバーOSの確認方法とダウンロード

phpファイル(ファイル名をお好きなものをつけてください)を1つドキュメントルートに作成していただき、以下のコードを入力します。

<?php
    phpinfo();

ファイル設置後、ブラウザで作成したファイルにアクセスすると、様々な情報が表示されます。 ionCubeをインストールするにあたり、以下の情報をメモしてください。

項目
PHP Version5.6.30
SystemLinux 856688bab75a 4.4.43-boot2docker #1 SMP Wed Jan 18 18:33:18 UTC 2017 x86_64
Thread Safetydisabled
Loaded Configuration File/usr/local/etc/php/php.ini

またここでSystemの最後がマシンタイプ(x86_64)になります。マシンタイプより32bitか64bitが判定できるようになっております。

  • x86_64, amd64 の場合 64bit
  • i686, i386 の場合 32bit

以下の情報をメモしてください。※()の中身は先ほどの表に記入した「例」の項目に当たる値となります。

  • PHPのバージョン(5.6.30)
  • OS名(Linux)
  • マシンタイプ(64bit)
  • PHPがスレッド化(disabled)
  • php.iniの場所(/usr/local/etc/php/php.ini)

ionCube Loader ダウンロード

メモした情報より、OS名とマシンタイプにあったionCube Loaderを以下よりダウンロードください。

英国ionCube社

インストール

ionCube Loaderのインストールは「php.ini」ファイルを編集し、インストールします。

以下、インストール方法の流れになります。

  • 先ほどダウンロードしたファイルを適当な場所に設置
  • php.ini を編集
  • apacheなどを再起動を行い、php.iniの反映

必要なのはこの中から一つのファイルになります。ファイルを決定するために先ほどのメモを使います。ファイルの命名規則は下記のようになっています。

スレッドセーフでない場合

ioncube_loader_<OSの種類>_<お使いのPHPのバージョン>.so

スレッドセーフの場合

ioncube_loader_<OSの種類>_<お使いのPHPのバージョン>_ts.so

これで使用するべきionCube Loaderのファイルが把握できました。このファイルを適当な場所に設置します。

php.iniの編集

次にionCube Loaderをインストールするために php.ini ファイルを編集します。 php.iniファイルの場所は、サーバーによって異なります。たとえば、ご利用のレンタルサーバーによってはコントロールパネルから設定する場合がありますので、ご利用のレンタルサーバーのマニュアルをご覧ください。

php.iniファイルに以下のようなコードを追記ください。

スレッドセーフでない場合

zend_extension = /path/to/ioncube_loader_<OSの種類>_<お使いのPHPのバージョン>.so

# 例
zend_extension = /usr/local/ioncube_loader_lin_5.6.so

スレッドセーフの場合

zend_extension_ts = /path/to/ioncube_loader_<OSの種類>_<お使いのPHPのバージョン>_ts.so

# 例
zend_extension_ts = /usr/local/ioncube_loader_lin_5.6_ts.so

php.iniの反映

WebサーバーがPHPを使用する場合、Webサーバーの起動時にphp.iniファイルが読み込まれます。Webサーバーを再起動して設定を反映させましょう。ただしレンタルサーバーなどをご利用の場合は、特に何もしなくても反映される場合もあります。またFastCGIなどをご利用の場合は、WebサーバーでなくCGIを再起動させてください。