2

我编写了一个程序来对服务器(电子邮件:cms1@melitaplc.com)进行一些监控,然后向我的笔记本电脑(daniel.saliba@melitaplc.com)发送一封电子邮件,该笔记本电脑连接到网络服务器(smtp.melita.com) . 在我的电子邮件丹尼尔....我尝试添加 smtp 端口即 sendEmail("dan​​iel.saliba\@melitaplc.com:25",.....) 但我得到了 /export/home/cassi/dead.letter。 ..

PS 我无法安装任何 CPAN 模块,因此下面的代码。

程序执行没有任何错误,但我没有收到电子邮件。

sendEmail("daniel.saliba\@melitaplc.com", "cms1\@melitaplc.com", "ALERT", "This is a  test" );

sub sendEmail
 {
    my ($to, $from, $subject, $message) = @_;
    my $sendmail = '/usr/lib/sendmail';
    open(MAIL, "|$sendmail -oi -t");
            print MAIL "From: $from\n";
            print MAIL "To: $to\n";
            print MAIL "Subject: $subject\n\n";
            print MAIL "$message\n";
    close(MAIL);
 }
4

1 回答 1

2

如果您无权安装 CPAN 模块,那么您可能也无法阅读邮件日志......所以您可以尝试运行

/usr/lib/sendmail -oi -t -v

在命令行上,输入脚本发送给它的相同文本,然后查看它的作用。该-v开关应该为您提供大量调试信息。

于 2013-07-19T14:29:42.517 回答