WEBサービス創造記

WEBサービスを作ったり保守したりしてる人のメモブログです。

CPANでモジュールをインストールするときに「サーバの応答にエラーがあるので、接続を終了します」と表示されてしまうときの対処法

      2012/12/18

下記のようにCPANでモジュールをインストールしようとしたら、「サーバの応答にエラーがあるので、接続を終了します」というエラーメッセージがでてモジュールがインストールできないことがあります。

# perl -M'CPAN' -e shell
cpan> install libwww-perl
~(略)~
--2010-09-25 14:03:18--  ftp://ftp.dti.ad.jp/pub/lang/CPAN/authors/id/P/PE/PETDANCE/CHECKSUMS.gz
  (試行: 3) => `-'
ftp.dti.ad.jp|202.216.228.228|:21 に接続しています... 接続しました。
anonymous としてログインしています... 
サーバの応答にエラーがあるので、接続を終了します。
再試行しています。

--2010-09-25 14:03:21--  ftp://ftp.dti.ad.jp/pub/lang/CPAN/authors/id/P/PE/PETDANCE/CHECKSUMS.gz
  (試行: 4) => `-'
ftp.dti.ad.jp|202.216.228.228|:21 に接続しています... 接続しました。
anonymous としてログインしています... 
サーバの応答にエラーがあるので、接続を終了します。
再試行しています。
~(略)~

このような場合はConfig.pmにミラーのURLを記載すると解決する場合があります。

Config.pmを開き、配列内の’urllist’というキーの要素の値に任意のミラーURLを指定します。

# vi /usr/lib/perl5/5.8.8/CPAN/Config.pm
$CPAN::Config = { 
~(略)~
   'urllist' => [q[ftp://ftp.kddilabs.jp/CPAN/]], 
~(略)~
}

ミラーは下記URLから好きなものを選択できます。
http://www.cpan.org/SITES.html

Config.pm編集後、再度CPANでモジュールをインストールしてみると、成功するかもしれません。

 - CPAN , ,