2010-12-10 84 views
0

我想發送一封電子郵件使用MIME :: Lite但電子郵件不會發送,我沒有得到任何錯誤。 代碼:電子郵件不發送與perl MIME :: Lite使用smtp

my $subject = $Config->{email}->{subject}; 
    my $from_email = $Config->{email}->{from_email}; 
    my $message = $Config->{email}->{message}; 
    my $smtp_server = $Config->{email}->{smtp_server}; 
    my $msg = MIME::Lite->new 
    (
    Subject => $subject, 
    From => $from_email, 
    To  => $email, 
    Type => 'text/html', 
    Data => $message 
    ); 

    $msg->send('smtp' ,$smtp_server); 
+1

嘗試檢查電子郵件日誌? – Marcus 2010-12-10 17:05:33

+0

是否安裝了sendmail?如果是,請嘗試發送郵件。 – 2010-12-11 00:12:25

+1

[Email :: Sender](http://p3rl.org/Email::Sender)有錯誤檢查,MIME :: Lite沒有。 - 您可以安裝[Wireshark](http://wireshark.org)以查看SMTProtocol對話。 – daxim 2010-12-11 12:25:16

回答

3

沒有太多去那裏...

也許嘗試調試?

$msg->send('smtp', $smtp_server, Debug=>1); 

並檢查$Config->{email}中的所有值是否如您所料。

+0

我試過了沒有新的調試。所有的值都是正確的。如果這是問題,我正在虛擬機上運行。我的連接是NAT,可以連接到互聯網。 – James 2010-12-10 16:37:59