さくらインターネットで高速処理のphp-extensionを使う方法 – 2007年 3月18日

さくらインターネットではphpのextensionが標準では使えない。phpinfo()で指定されているextension-dirを覗いても何の拡張も入っていない。PHPで書かれているPEARよりも高速に動くextensionを使わない手はない。

ネットを色々探してみても、さくらインターネットでextension拡張を使う方法が書かれたサイトがなく、特に難しくもないので、まとめてみた。


PHP EXTENSIONってなに?という方は、PHP Extensionを作ろう第1回(KLAB)がわかりやすくて便利。

今回はJSONファイルをエンコード&デコードして使えるphp-jsonを例に、さくらインターネットでextensionを使う方法を書いていく。

前提

スタンダードプラン・・・telnetが使えることが前提です。

方法

まずは該当するextensionファイルをダウンロードしましょう。

wget http://www.aurore.net/projects/php-json/php-json-ext-1.1.1.tar.bz2
tar jsf php-json-ext-1.1.1.tar.bz2 -c $HOME/local/src

次にコンパイル

./configure –prefix=$HOME/local

そして、できたMakeファイルの各種パスを根こそぎ書き換えます。
標準では、/usr/local/src となっていますが、/home/user/local/srcに変更します。

vi Makefile

あとは、makeして、make install するのみです。

make
make install

最後に、/home/user/www/php.iniファイルに以下の記述を加えて終了です。

extension-dir = 設定したパス(私は/home/user/local/lib/php/extension/)
extension=json.so

これだけです。

jsonを例にすると、PEAR:JSON と extensionであるphp-jsonの処理速度を比べると体感で10倍以上早いです。自分で作ったextensionを設置するもよし、高速extensionを使わない手はありません。

カテゴリー:技術・開発