每当我使用cronjob / mail执行文件到outerside客户端时phpmailer附件失败,但每当我从命令行运行脚本时它都可以工作

时间:2015-04-29 00:04:13

标签: php phpmailer

我几天前将我的网站电子邮件(通过AWS SES发送)升级为带有附加图像的HTML格式。我正在使用PHPMailer。当我测试运行在我的域上的电子邮件或我的个人电子邮件 - 即使是大量 - 一切都运行良好。

相反,当我的cronjob执行了相同的脚本以邮寄给其他网站用户时,文件附件没有经过大多数(或可能是所有)时间。这可能与它是一个cronjob有关吗?我自己模拟了比通过电子邮件发送网站用户时实际使用的更高的音量,因此它不是音量/速率限制问题。

当我从cronjob运行时,它非常可靠地失败,即使这是一个与任何环境依赖关系无关的简单php脚本。有人有调试建议吗?我看到的唯一相关帖子就在这里:

Attachments working intermittently

1 个答案:

答案 0 :(得分:0)

很可能是路径问题 - cron作业默认情况下不设置PATH环境var,因此在cron脚本中设置一个,或者为所有内容使用绝对路径。

例如,如果你说:

<body>

它可能找不到php二进制文件或你的脚本或你的附件,所以做这样的事情:

php myscript.php

PATH=/usr/bin
php myscript.php

你需要确切地告诉我们错误是什么 - &#34;它没有工作&#34;不是有用的信息。