« 2005年11月 | トップページ | 2006年02月 »

・[2005年12月03日]レンタルサーバーでPEARを使う方法

2005年12月03日

レンタルサーバーでPEARを使う方法

私が初めてPEARの本家サイトを見た時に、使用出来るライブラリの数に驚きました。
しかし、PEARは基本的にTelnetなどでサーバーに接続してインストールする方法が主流の為、レンタルサーバーでは使用出来ないことが多いです。最近のレンタルサーバーでは最初から付いてることもありますが、メジャーなものしか使えないのでマニアック?なライブラリが使えない等の問題が発生します。
まあ、早い話がPEARが使えるかどうかは環境に依存するってことです。
今回は、PEARがインストールされてない共用サーバーでこのライブラリを使う方法をご紹介します。
方法は2つあります。1つは「.htaccess」を使用する方法。2つ目は「ini_set」関数を使用する方法の2つです。
ただし、このやり方はPEAR本家サイトでも推奨されていないので、出来る限りインストールするようにしましょう。

PEAR本家サイト

まず、PEAR本家サイトから使用したいライブラリをダウンロードします。
1.PEARにアクセス
2.右上にある「Packages」をクリック
3.使用したいライブラリを探す(見つからない場合は、サイト内検索を使用)
4.「Download」ページでDownloadする
※ 「Download」ページに「Dependencies:」と書いてあった場合は依存ファイルがあるので、記載されているPackageもダウンロードして下さい。また、初めて使用する場合はPEARもダウンロードして下さい。

次にPEARを使用するサーバーに適当にフォルダを作成して、ダウンロードしたファイルをアップロードします。

・「.htaccess」ファイルを使用してPEARを使用する
.htaccessに以下の3行を追加します。
尚、サイトにアップロードしたPEARのパスは「/home/site/PEAR」と仮定しています。

・Linuxの場合
<IfModule mod_php4.c>
php_value include_path ".:/home/site/PEAR"
</IfModule>

・Windowsの場合
<IfModule mod_php4.c>
php_value include_path ".;/home/site/PEAR"
</IfModule>

LinuxとWindowsの違いは、パスの先頭に記述してある「.:」と「.;」です。

.htaccessがうまくいかなかった場合は、PHPに直接記述します。

ini_set('include_path', ".:/home/site/PEAR");

既にSETされている情報を引き継ぐ場合は、下記のようにini_getを使います。
$path = ini_get('include_path');
$path .= ":/home/site/PEAR";
ini_set('include_path', $path);

どちらかの方法で設定すると通常通りPEARが使用出来るようになります。

require_once("DB.php");

このやり方は、PEARに限らず他のライブラリでも使えるのが多いです。私はこのやり方を発見したお陰でレンタルサーバーでも多数のライブラリを使用出来るようになりました。
ただし、最初でも触れましたが、PEARでは推奨されていないやり方なので最終手段として使いましょう^^;

関連記事
WindowsでPEARを自動インストールしてみよう
依存ファイルが多くて手動でセットアップするのが面倒な場合に便利です。

| | コメント (1) | トラックバック (0)