Hatena::ブログ(Diary)

hogehoge foobar Blog Style5

2011-04-13

PEARをプロキシ経由でインストールする方法

PHPPEAR を使ってライブラリインストールするときに、プロキシが邪魔をしてインストール出来ないことがあったので、備忘録として書いておきます。

プロキシ経由での PEAR インストール失敗する場合

PEARプロキシ設定が正しくない状態でインストールを行うと、以下のようなエラーメッセージが表示され、インストールが失敗ます。

pear install のエラー

以下の例では「Cache_Lite」をインストールしようとしています。

「No releases available for package "〇〇〇"」や「Package "〇〇〇" is not valid」といったメッセージが表示されます。

# pear install Cache_Lite
No releases available for package "pear.php.net/Cache_Lite"
Cannot initialize 'Cache_Lite', invalid or missing package file
Package "Cache_Lite" is not valid
pear channel-update のエラー

pear channel-update」も同様にエラーが発生し、処理が失敗します。

# pear channel-update pear.php.net
Retrieving channel.xml from remote server
Cannot retrieve channel.xml for channel "pear.php.net"

PEARプロキシ設定の確認方法

PEARプロキシ設定の状態を確認するには「pear config-show」を使用します。

pear config-show」を実行すると、PEAR に設定されているパラメタがリスト表示されます。

プロキシの設定については、「http_proxy」というパラメタ名になります。

以下の例では、「http_proxy <not set>」となっており、プロキシの情報として何も設定されていない状態になります。

# pear config-show 
Configuration (channel pear.php.net):
=====================================
Auto-discover new Channels     auto_discover    <not set>
Default Channel                default_channel  pear.php.net
HTTP Proxy Server Address      http_proxy       <not set>     -> プロキシが設定されていない
(〜 以下省略 〜)

PEARプロキシ設定方法

PEARプロキシ設定をする場合、「pear config-set」を使用します。

pear config-set」を実行する際は、引数として「パラメタ名」と「設定する値」を指定します。

# pear config-set パラメタ名 設定する値

今回はプロキシの設定なので、パラメタ名として「http_proxy」を指定します。

認証の必要ないプロキシの場合は以下のようなコマンドになります。

# pear config-set http_proxy http://your-proxy:portno

認証が必要なプロキシの場合は、プロキシの情報として「user_id:password@」を指定します。

# pear config-set http_proxy http://user_id:password@your-proxy:portno

プロキシの設定をした後で、「pear config-show」で設定値の状態を確認すると、以下のように表示されます。

# pear config-show 
Configuration (channel pear.php.net):
=====================================
Auto-discover new Channels     auto_discover    <not set>
Default Channel                default_channel  pear.php.net
HTTP Proxy Server Address      http_proxy       http://user_id:password@your-proxy:portno
(〜 以下省略 〜)

設定が完了したら、あとは通常どおり「pear install」や「pear channel-update」を実行することが出来るようになります。

pear install の成功例
# pear install Cache_Lite
downloading Cache_Lite-1.7.9.tgz ...
Starting to download Cache_Lite-1.7.9.tgz (30,318 bytes)
.........done: 30,318 bytes
install ok: channel://pear.php.net/Cache_Lite-1.7.9
pear channel-update の成功例
# pear channel-update pear.php.net
Retrieving channel.xml from remote server
Update of Channel "pear.php.net" succeeded

今回参考にしたページ

CentOSyum経由でPEARインストールする方法 - Layer8 Reference

http://jp.layer8.sh/reference/entry/show/id/2402

pearHTTPプロキシ設定 ≪ ku

http://ido.nu/kuma/2009/12/15/pear-http-proxy-setting/

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/mrgoofy33/20110413/1302627486