按小刁的意思,首先把昨天的检测脚本改成带有复位功能的,然后把报警提示以邮件方式发送到指定的邮箱。

---------------------------------------------------------------------------------------------------------------------------------------

http://lvdbing.blog.163.com/blog/static/55801529200832111630600/ (这里也说明了如何用perl来发送邮件,清参照网页)

 

使用Net::SMTP_auth发邮件,首先要先安装Net::SMTP_auth模块。

1. Windows Operating System:如果是在windows操作系统使用的ActivePerl的话,则进入ActivePerl的安装目录的可执行程序目录,也就是bin目录。(例如:C:\Perl\bin)执行命令ppm-shell ,(PPM:Perl Package Manager

Perl包管理器),然后执行命令:

C:\Perl\bin>ppm-shell
ppm 4.01
Copyright (C) 2007 ActiveState Software Inc.  All rights reserved.
ppm>
install Net::SMTP_auth

2. Linux Operating System:如果是在linux操作系统使用Perl的话,则使用命令cpan后面跟要安装的模块就可以了。(如果是第一次使用cpan的话,会要求先配置cpan的一些信息,一直按默认的设置就可以了)。

 [root@lvdbing.net ~]# cpan Net::SMTP_auth


PS: 网页里面提到的的确可以发送邮件,但是发送中文时会出现乱码;所以又到网上找到了解决方案,以下这个是可行的解决方案。

我们经常发送中文的电子邮件,而电子邮件的编码写web不大一样。我们一般用base64的编码来处理邮件头中非ascii字符。而现在UTF-8是web上最通用的编码。
$smtp->datasend("Content-Type:text/plain;charset=UTF-8\n"); #这里设置邮件内容的编码
$smtp->datasend("Subject:=?UTF-8?B?".encode_base64($title, '')."?=\n\n"); #encode_base64是MIME::Base64模块中的函数,$title为UTF-8编码过的
$smtp->datasend($mail_body." \n"); #$mail_body为UTF-8编码过的

相关文章:

  • 2022-12-23
  • 2021-08-22
  • 2021-12-24
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-10-05
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案