我有一个PHP脚本,可以发送带有附件的电子邮件。当我通过网络浏览器手动执行下面的PHP脚本时,一切正常,电子邮件立即发送。但是,当我尝试使用crontab命令执行php文件时,不会发送电子邮件。知道为什么会这样吗? cron命令不会产生任何错误......
此外,email_output.log
显示成功,但电子邮件并未通过,就像它在传出框中堆积但从未实际发送过一样。
Crontab命令:
/Applications/MAMP/bin/php/php5.6.10/bin/php /my/path/emailApp.php > /my/path/email_console.log 2> /my/path/email_error.log
提前致谢。
<?php
include_once(__DIR__ . '/mailer/swift_required.php');
$transport = Swift_SmtpTransport::newInstance('mail.myhost.com', 25)
->setUsername('name@myhost.com')
->setPassword('password');
// Create the Mailer using your created Transport
$mailer = Swift_Mailer::newInstance($transport);
$mailTo = Array('testemail@gmail.com');
$subject ="report";
$attach = 'report.pdf';
$message = Swift_Message::newInstance($subject)
->setFrom(array('name@mydomain.com' => 'Bob Dole' ))
->attach(Swift_Attachment::fromPath($attach)->setFilename($attach))
->setTo($mailTo);
$message->setBody("attached",'text/html');
// Send the message
$result = $mailer->send($message);
if($result == 0){
echo 'Error';
} else {
echo 'Success';
}