2011-07-22 21 views
11

我想訪問證書無法驗證的網站。我正在使用WWW :: Mechanize獲取請求。那麼如何去忽略這個並繼續連接到網站呢?如何忽略perl中的'Certificate Verify Failed'錯誤?

+3

http://code.activestate.com/lists/activeperl/21645/有一個代碼示例:BEGIN {$ ENV {} PERL_LWP_SSL_VERIFY_HOSTNAME = 0} – Alan

回答

23
use IO::Socket::SSL qw(); 
use WWW::Mechanize qw(); 
my $mech = WWW::Mechanize->new(ssl_opts => { 
    SSL_verify_mode => IO::Socket::SSL::SSL_VERIFY_NONE, 
    verify_hostname => 0, # this key is likely going to be removed in future LWP >6.04 
}); 

隨着IO ::插座:: SSL早於1.79,見PERL_LWP_SSL_VERIFY_HOSTNAME

+0

這讓我在正確的軌道上處理郵件: :發件人無法驗證證書。我以SSL_verify_mode => 0結束了對Sender.pm的調用,以調用IO :: Socket :: SSL-> start_SSL –

4
my $mech = WWW::Mechanize->new('ssl_opts' => { 'verify_hostname' => 0 });