- 使えるネットVPSプラチナプランでのPearインストール
- 2011.10.30
VPSでPEARをインストールするときに若干はまったので次回の為に備忘録にまとめます。
・SSH接続し、root権限になってライブラリの共有ディレクトリに移動
cd /usr/share・最新の PEARパッケージを取得し組み込む
# php -q go-pearすると以下のメッセージ
# php < <(curl -s http://pear.php.net/go-pear) Sorry! Your PHP version is too new (5.1.6) for this go-pear. Instead use http://pear.php.net/go-pear.phar for a more stable and current version of go-pear, more suited to your PHP version.「あなたの使ってる PHP のバージョンは新しすぎるから代わりに http://pear.php.net/go-pear.phar を使用してください。」というような事が書かれている。
なので、方法を変えてみる。# wget http://pear.php.net/go-pear.phar
# php go-pear.phar
今度はうまくいったようなのでそのままEnter キーを押す。
インストールされたか確認。# /usr/share/pear/bin/pear -V
バージョン情報が表示されればインストールOK。
使えるネットのプラチナプランでは以下のように表示されたのでとりあえずはインストールはされているようだ。# pear version
PEAR Version: 1.9.4
PHP Version: 5.1.6
Zend Engine Version: 2.1.0
Running on: Linux vps-1012648-6540.cp.tsukaeru.ne.jp 2.6.18-028stab070.4 #1 SMP Tue Aug 17 18:32:47 MSD 2010 x86_64ここで、pear listを入力してみると
-bash: pear: command not found通常ならinstall済みのpearパッケージ一覧が表示されるのですが、どうもPATHが通っていなかったらしくてコマンドが見つからないと言われちゃいました。
なのでPATHを通すことにします。
まずはルートに移動して、「.bash_profile」があるかどうか調べます。
.profileがあればそっちでしょうけど# cd ~
# ls -al | find .bash*
「.bash_profile」が見つかれば良いですが、ファイルが無ければ、viで開けば勝手に作られます。# vi .bash_profile
PATH=/usr/share/PEAR/bin:$PATH
export PATH内容を保存したら、設定を反映させます。
sourceコマンドで指定したファイルを読み込んで実行。
# source .bash_profile
この後以下のコマンドで無事一覧が表示されました。
#pear list
次にvhost.confファイルを設定する
vhost.confは以下のディレクトリの中です。
/var/www/vhosts/ドメイン名/conf
なければviコマンドで開いて新たに作成する。
以下はvhost.confの中身となります。
php_admin_value safe_mode_include_dir “/usr/share/pear”
php_admin_value open_basedir “/var/www/vhosts/ドメイン名/httpdocs:/tmp:/usr/share/pear”
vhost.conf作成後、SSHにてサーバに接続後、以下のコマンドを実行。
/usr/local/psa/admin/sbin/websrvmng –reconfigure-vhost –vhost-name=ドメイン名
上記の「ドメイン名」の部分は、いずれもvhost.confを作成したドメイン名を指定。
サーバによっては /etc/php.ini の include_path に /usr/share/pear が設定されていないことがありますので、こちらも適宜設定を行う。
PEAR
- んっ cronでpearが動かない!?
- 2010.05.27
ブラウザから起動すると正常に動くプログラムがcronだと動かないというのはたまにある現象だし、今までは殆どの場合、パスの違いが原因でした。
今回、pearをcronで動かしたかったのだが、動かなかったので、include_pathを調べてみたが合ってる様子。
色々試してみたところ、PHPがセーフモードの為、動かなかったのが判明した。
ブラウザで起動する場合は、php.ini、httpd.conf、.htaccessの設定を読むが、cron(CLI)ではデフォルトはphp.iniのみだそうなので、php.iniのsafe_modeをOffにしようとも思ったが、そうするとサーバ全てに反映されてしまい、セキュリティ上好ましくない為、cronの記述に「/usr/bin/php -d safe_mode=off」のように -d safe_mode=off を追加することにより問題が解消されました。
- PEARのインストール
- 2009.11.21
共用サーバー(使えるネット)でFTPを使用したPEARライブラリのインストール方法をまとめます。
(1)http://pear.php.net/go-pearにアクセスして表示されたスクリプトをコピーしてgo-pear.php等の名前を付けてローカルに保存する。
(2)ウェブサーバー上にgo-pear等、適当な名前のディレクトリを作成し、そこに先程保存したgo-pear.phpをアップロード。
(3)第三者にアクセスされないよう、Basic認証でアクセス制限をかける。
「.htaccess」 の内容
# このフォルダーのアクセス制限 パスワードの設置
AuthUserFile /var/www/vhosts/**********/httpdocs/go-pear/.htpasswd
#制限をかけたいディレクトリ
AuthGroupFile /dev/null
AuthName “Please enter your ID and password“
AuthType Basic
require valid-user「.htpasswd」 の内容
ID:暗号化されたパスワード(4)PEARをインストールするディレクトリを作成し、そのディレクトリのパーミッションを777に変更。
(5)ブラウザでgo-pear.phpにアクセス。
1にPEARをインストールするパスを入力。
使えるネットの場合は「/var/www/vhosts/ドメイン名/httpdocs/pear」11にPHPパスを入力。
使えるネットの場合は「/usr/bin/php」全ての設定が終わったら「Install」をクリック。
(6)include_pathを設定。
共用サーバーではphp.iniを編集出来ないので、.htaccessで設定する。php_value include_path “.:/var/www/vhosts/ドメイン名/httpdocs/pear”php_value include_path “.:/var/www/vhosts/ドメイン名/httpdocs/pear”


