PHPの標準ライブラリであるPEARはとても便利でよく利用しているのですが、 レンタルサーバによっては必要なパッケージがインストールされていない場合やバージョンが古いといったことがよくあります。
このような場合に、簡単な方法でレンタルサーバでも必要なパッケージを利用する方法があります。
一言で言えば「ファイルを任意に場所にアップロードしてインクルードパスを通す」
これだけですが、いくつかはまりそうな個所がありますので詳しく方法を説明します。
1.ファイルを用意する
必要なPEARファイルを用意します。ローカルにPHPの環境が揃っているならpearコマンドでローカルサーバにインストールします。
>pear install パッケージ名
pearのサイトから直接ダウンロードする事も可能ですが、その場合はファイル・フォルダー構成に十分注意してください。
2.インクルードパスを修正する
PHPの設定を変更・修正する方法は大きく分けて3つあります。
? php.iniファイルを直接編集する
? ini_set()関数でスクリプト上で修正する
? Apacheの.htaccessファイルで修正する
本来なら?のphp.iniファイルを編集するのが一番正しいのでしょうが、レンタルサーバの場合、php.iniファイルを修正できることは稀です。?のini_set()関数で修正する場合は、後から見ても分かりやすいと思いますが、ソースが汚れますのであまりおすすめしません。
ということで、?の.htaccessファイルを編集する方法を紹介します。
まず現在のinclude_pathをphpinfo()等で確認します。
下の画像はphpinfo()で表示されたinclude_pathの画像です。
コロン(:)で区切られた文字列がinclude_pathを表します。このように複数のinclude_pathを指定する事が出来ます。行頭のピリオド(.)はカレントディレクトリを表します。
include_pathは先頭からファイルを探しますので、現在設定されているinclude_pathの前にPEARをインストールする任意のディレクトリを指定します。
(注)windowsサーバの場合はコロン(:)ではなくセミコロン(;)が区切り文字になります。
.htaccessファイルを用意します。
今回PEARをインストールするディレクトリを”/PEAR”に設定する場合、.htaccessファイルに次の行を加えます。
php_value include_path “.:/PEAR:/usr/share/php:/usr/share/pear”
加えるディレクトリは必ず前に付け足すようにして下さい。
3.PEARファイルをアップロードする
最後に1で用意したファイルを2で指定したディレクトリにアップロードします。
以上でPEARが利用できるようになります。PEAR_infopearp等で確認しましょう。
この方法は、PEARが利用できない環境の場合はもちろん、WebアプリによってPEARパッケージのバージョンを固定したい場合にも利用できるので便利です。
コメント
[…] いてた所をファイル名のみで呼び出せるようになります。便利ですね! 「PEARのインストールされていないレンタルサーバでPEARを使う方法 | 街のWeb屋さん」を参考にさせていただきました […]
[…] Shared PEARのインストールされていないレンタルサーバでPEARを使う方法 | 街のWeb屋さん. […]