さくらのレンタルサーバには pear がインストールされているのだが、権限がないのでパッケージを追加するなど操作することが一切できない。

それでは全く使いものにならないので、自分で pear をインストールする方法をネットで手順を検索してみたのだが、「 pear の公式サイトの go-pear はうまく動作しなくなっていてエラーが出るので(そのサイトに独自に)保存してあるアーカイブをダウンロードしてインストールする」とか、「 go-pear.php をダウンロードして実行する」とか、なんだか変なことばかり書いてあるので、参考にするのはやめて、 pear の公式サイトをたどってみた。

pear の公式サイトの url を開き、「installing PEAR on your system」のリンク先を開き、「Getting and installing the PEAR package manager」のリンク先を開く。

すると、「Unix/Linux/BSD」のセクションに、

$ wget http://pear.php.net/go-pear.phar

$ php go-pear.phar

とするように書いてある。特に問題もなく go-pear.phar がダウンロードされ、実行する。

1. Installation base ($prefix) : /home/***/pear

2. Temporary directory for processing : /tmp/pear/install

3. Temporary directory for downloads : /tmp/pear/install

4. Binaries directory : /home/***/pear/bin

5. PHP code directory ($php_dir) : /home/***/pear/share/pear

6. Documentation directory : /home/***/pear/docs

7. Data directory : /home/***/pear/data

8. User-modifiable configuration files directory : /home/***/pear/cfg

9. Public Web Files directory : /home/***/www

10. System manual pages directory : /home/***/pear/man

11. Tests directory : /home/***/pear/tests

12. Name of configuration file : /home/***/.pearrc

1-12, 'all' or Enter to continue:

このような選択肢が表示されるので、 all を選択すると、1から12まで順番にディレクトリを設定することになる。基本的に提案されて表示された通りのディレクトリで問題ないが、 Public Web Files directory だけは、提案通りに入力すると $prefix/www となってしまう。提案通りの $prefix を入力していある場合、 /home/(ユーザID)/pear/www となるのでそれではまずい。 /home/(ユーザID)/www と入力しなければいけない。

1から12までの入力を完了すると、先程の選択肢の表示に戻るので、今度は ENTER だけ入力すると、インストールが始まる。設定内容は /home/(ユーザID)/.pearrc に保存される。

******************************************************************************

WARNING! The include_path defined in the currently used php.ini does not

contain the PEAR PHP directory you just specified:

</home/***/pear/share/pear>

If the specified directory is also not in the include_path used by

your scripts, you will have problems getting any PEAR packages working.

と WARNING が表示されるので、さくらのレンタルサーバのコントロールパネルを開き、「アプリケーションの設定>PHP設定の編集」を選択し、エディットボックス内に、

include_path = ".:/home/(ユーザID)/pear/share/pear"

と入力し「保存する」ボタンを押し保存しておく。

先程の go-pear.phar の設定の続きに話を戻すと、その後、

Would you like to alter php.ini </usr/local/php/7.3/etc/php.ini>? [Y/n] : n

と聞かれるが、 Y と返事しても、 /usr/local/php/7.3/etc/php.ini は、レンタルサーバのユーザからは編集できない(だからレンタルサーバのコントロールパネルに編集する場所がある)ので、ここは N と答えておく。

I will add a workaround for this in the 'pear' command to make sure

the installer works, but please look over your php.ini or Apache

configuration to make sure /home/red-souls/pear/share/pear is in your include_path.

などと、ちょっと文句を言われるが気にしない。

** WARNING! The link /usr/local/bin/pear does not point to the installed /home/***/pear/bin/pear

The 'pear' command is now at your service at /home/***/pear/bin/pear

** The 'pear' command is not currently in your PATH, so you need to

** use '/home/***/pear/bin/pear' until you have added

** '/home/***/pear/bin' to your PATH environment variable.

と警告されるが、自分のサーバの場合はどちらの pear を実行して pear list としてみても PEAR のバージョンに変化がないので問題はなさそうだ。気になる場合は /home/(ユーザID)/pear/bin を PATH に追加しておくとよい。その際は、 /usr/local/bin/pear よりも優先して実行されるようにしておくこと。

以上が、さくらのレンタルサーバに pear をインストールする手順だ。なぜか、ネットに上がっているさくらのレンタルサーバへの pear のインストール方法には、このようにしてインストールすると書いてあるサイトが皆無だった。一体どうしてなのだろう?そもそも go-pear.php ってなんだ?そんなファイルなかったぞ?? go-pear.phar の間違いなのか?それにエラーもなく普通にインストール、実行できるのだが・・・。

お名前:

URL または e-mail (option):

CAPTCHA Image 左の画像内の式の計算結果を入力:
TWEET
この記事のリンク元

この記事のリンク用URL&トラックバックURL : https://red-souls.jp/ichounoki/rnote/software/20190822_152952186363.htm