Top >
Programming Language >
Perl > PerlのLWPで「Can't verify SSL peers without knowing which Certificate Authorities to trust」というエラーになったときの対処
PerlのLWPで「Can't verify SSL peers without knowing which Certificate Authorities to trust」というエラーになったときの対処
PerlのLWPで「Can't verify SSL peers without knowing which Certificate Authorities to trust」というエラーになったときの対処について紹介します。
1.問題点
Movable TypeのプラグインでFacebookのOAuth認証部分をPerlで実装し、実行したところ次のようなエラーが発生しました。
Can't verify SSL peers without knowing which Certificate Authorities to trust This problem can be fixed by either setting the PERL_LWP_SSL_CA_FILE envirionment variable or by installing the Mozilla::CA module. To disable verification of SSL peers set the PERL_LWP_SSL_VERIFY_HOSTNAME envirionment variable to 0. If you do this you can't be sure that you communicate with the expected peer.
2.原因と対処
原因はメッセージに書いているとおり、信頼出来るCAを見つけられなくてSSL接続先を検証できなかったためです。
もう少し書くと、LWPで"https"で開始するサイトにアクセスするとこのようなエラーになることがあるようです。
use LWP::UserAgent;
my $ua = LWP::UserAgent->new;
my $res = $ua->get('https://~/');
if ( $res->is_success ) {
print $res->content;
}
対処は、エラーメッセージに書かれているMozilla::CAをインストールしました。
$ sudo cpanm Mozilla::CA
PERL_LWP_SSL_VERIFY_HOSTNAMEを無効にしてSSL接続先を検証しない方法もあるようですが、おすすめできません。
3.参考サイト
参考サイトは下記です。ありがとうございました。
- MacのPerlでHTTPSがCan’t verify SSL peersというエラーになるとき
- LWPでhttpsのコンテンツをget
- LWP で 500 Can't verify SSL peers without knowning which Certificate Authorities to trust が出た時の対処方法
Posted by yujiro このページの先頭に戻る
- Perlでansibleライブラリを作成する方法
- perlのCPANモジュールからRPMを作成する方法
- Perlで「Subroutine permission redefined at~」を抑止する方法
- XML::Simpleのインストールでエラーになる場合の対処
- YAML::Tinyで「YAML::Tiny found bad indenting in line~」というエラーになる場合の対処
- Perlの正規表現を使って文字列をまとめて取得する方法
- Perlのハッシュでキーの有無を調べる方法
- perlで配列の途中の要素を削除する方法
- YAML::Tinyでコロンを利用する方法
- Perlで改行コードがCRのファイルを読み込む方法
- Perlで「Possible precedence issue with control flow operator」という警告の対処
- Perl+Windowsでファイルを再帰的にリネームする方法
- Perlプログラムの中でファイルの一部を書き換える方法
- Perlの「Bareword "%s" not allowed while "strict subs" in use~」というエラーについて
- Perlで文字列結合しながらs///演算子で置換する方法
トラックバックURL
コメントする
greeting