Perl电子邮件脚本适用于本地计算机,但不适用于Web托管服务

时间:2013-05-11 05:29:20

标签: perl email

下面的perl脚本适用于我的本地linux机器,但是当我尝试通过cron作业在我的网络托管服务(Stablehost)上运行它时,我从未收到电子邮件。 Stablehost确实在每次运行时发送了cron控制台输出,所以我确实看到了“结束了!”行,并没有报告错误。

我不知道如何诊断这个,所以任何帮助都会受到赞赏!

#!/usr/bin/perl

use strict;

use MIME::Lite;
use Net::SMTP::SSL;

my $msg = MIME::Lite->new(
From    => 'fakeaddress@yahoo.com',
To      => 'fakeaddress2@yahoo.com',
Subject => 'My Subject',
Type    => 'multipart/mixed',
);

$msg->attach(
Type     => 'TEXT',
Data     => 'My body',
);

my $smtps = Net::SMTP::SSL->new('smtp.mail.yahoo.com', 
                           Port => 465,
                           DEBUG => 1,
                           ) or warn "$!\n"; 

defined ($smtps->auth('fakeaddress@yahoo.com', 'fakepass'))
or die "Can't authenticate: $!\n";

$smtps->mail('fakeaddress@yahoo.com');
$smtps->to('fakeaddress2@yahoo.com');
$smtps->data();
$smtps->datasend( $msg->as_string() );
$smtps->dataend();
$smtps->quit();

print "got to end!";

0 个答案:

没有答案