Cron工作不发送邮件

时间:2015-04-17 12:16:34

标签: php cron phpmailer

我的cron作业已运行但未发送电子邮件。

/usr/bin/php -f /home/user/public_html/test/cron/checklist.php task=client

结果=确定

<?php
//get parameter from URL 
$argv = $_SERVER['argv'];
$task = explode("=", $argv[1]);
?>

结果=确定

复杂化从这里开始!

if(!$mail->Send()) { 
    echo "Mailer Error: " . $mail->ErrorInfo.'<br>';
} else {
    echo "Message sent!<br>";
} 

它说“发送消息!”但没有发送电子邮件! 当我从网页上运行它作为测试时,它可以工作并发送邮件

我使用phpmailer发送。

1 个答案:

答案 0 :(得分:0)

尝试/usr/bin/php -f /home/user/public_html/test/cron/checklist.php client

此外,在PHP代码中,区分Web服务器处理和命令行处理。这是一个例子:

if (php_sapi_name() == 'cli') {
    echo "this is command line";
    $task = $argv[1];
} else {
    echo "run from a web server";
    $argv = $_SERVER['argv']; 
    $task = explode("=", $argv[1]);
}
echo "\n task =";
echo $task;