perl 监控web能否正常打开

use LWP::Simple qw(get);  
use HTTP::Date qw(time2iso str2time time2iso time2isoz);
use Net::Ping;  
use Socket;
use Net::SMTP;
sub send_mail{
if (@_ != 2){print "请输入2个参数
";exit 1};
    ($m,$n) = @_; #将参数赋值给变量  
    my $to_address  = $m;
my $CurrTime = time2iso(time());
    my $to_address  = $m;
    my $mail_user   = 'zhao.yangjian@163.com';
    my $mail_pwd    = 'xxxxxx';
    my $mail_server = 'smtp.163.com';

    my $from    = "From: $mail_user
";
    my $subject = "Subject: zjcap info
";
    my $info = "$CurrTime--$n";
     my $message = <<CONTENT; 
     $info
CONTENT
    my $smtp = Net::SMTP->new($mail_server);

    $smtp->auth($mail_user, $mail_pwd) || die "Auth Error! $!";
    $smtp->mail($mail_user);
    $smtp->to($to_address);

    $smtp->data();             # begin the data
    $smtp->datasend($from);    # set user
    $smtp->datasend($subject); # set subject
    $smtp->datasend("

");
    $smtp->datasend("$message
"); # set content
    $smtp->dataend();
    $smtp->quit();
};

$host = "http://www.zjtest3.com/";  
$content = get($host);
if (defined ($content) ){print "$host can open
"}
   else{ 
    send_mail('zhaoyangjian@zjcap.cn', "$host is lost");
};
$host = "http://www.zjcap.cn/";
$content = get($host);
if (defined ($content) ){print "$host can open
"}
   else{
    send_mail('zhaoyangjian@zjcap.cn', "$host is lost");
};

原文地址:https://www.cnblogs.com/hzcya1995/p/13351595.html