到目前为止,这是我的代码:
#!/usr/bin/perl
use strict;
use warnings;
use MIME::Lite;
my $to = 'example@asd.com';
my $from = 'example@asd.com';
my $subject = 'Test Email';
my $message = 'This is test email sent by Perl Script';
my $msg = MIME::Lite->new(
From => $from,
To => $to,
Subject => $subject,
Data => $message
);
$msg->add( "Type" => "multipart/mixed" );
$msg->send("smtp", "good.domain.net");
print "Email Sent Successfully\n";
当我想运行脚本时,我收到以下错误:
无法连接到邮件服务器:... \ email.pl中的文件描述符错误 第17行。
我不知道问题是什么。有人知道如何解决这个问题吗?
编辑:我更正了上面的代码,它正在使用正确的服务器(它根本不需要身份验证)。
答案 0 :(得分:1)
尝试缩小搜索范围。
1:远程登录SMTP主机时是否收到SMTP问候语?
telnet mail.domain.net 25
1:是 =>将调试选项添加到MIME :: Lite发送(通过SMTP)调用。
$msg->send("smtp", "mail.domain.net", Debug=>1, AuthUser=>'myname@domain.com', AuthPass=>"password" );