備忘録のため,内容の正当性については責任を持ちません。

PHP を 5.3 にアップグレードした BlueOnyx 上で PEAR を使う方法のメモ。


まず yum で PEAR をインストールする。

# yum install php-pear --enablerepo=remi

このままの状態では,次のような Warning が発生する。

Warning: require_once(): open_basedir restriction in effect. File(/usr/share/pear/PEAR.php) is not within the allowed path(s): (/tmp/:/var/lib/php/session/) in pearcmd.php on line 48
PHP Warning:  require_once(): open_basedir restriction in effect. File(/usr/share/pear/PEAR.php) is not within the allowed path(s): (/tmp/:/var/lib/php/session/) in /usr/share/pear/pearcmd.php on line 48

これを解決するために,BlueOnyx コンパネの PHP Settings で Open basedir: を空にしたうえで,コマンドのオプションで open_basedir を無効にして,PEAR を最新の状態にアップデートする。

# pear upgrade-all
# pear upgrade --force PEAR

# /usr/bin/php -C \
    -d include_path=/usr/share/pear \
    -d output_buffering=1 \
    -d open_basedir=/ \
    /usr/share/pear/pearcmd.php upgrade-all

BlueOnyx コンパネの PHP Settings で Open basedir: を次のように設定する。

/tmp/:/var/lib/php/session/:/usr/share/pear/

状態を確認する。

# pear list
Installed packages, channel pear.php.net:
=========================================
Package          Version State
Archive_Tar      1.3.7   stable
Auth_SASL        1.0.4   stable
Console_Getopt   1.3.1   stable
Mail             1.2.0   stable
Net_SMTP         1.5.2   stable
Net_Socket       1.0.10  stable
PEAR             1.9.2   stable
Structures_Graph 1.0.4   stable
XML_RPC          1.5.4   stable
XML_Util         1.2.1   stable

以上で PEAR を使えるようになった。


コメント

コメントする




CAPTCHA