我在 Coldfusion 9 的邮件假脱机中大约有 9,000 条未送达的消息。据我所知,管理这些消息的唯一方法是通过 CF Admin GUI 一次处理 10 条消息。
我正在寻找一种方法来加快这个过程。我想清除队列,或批量发送它们。
有谁知道如何做到这一点?
谢谢,
-戴夫
我在 Coldfusion 9 的邮件假脱机中大约有 9,000 条未送达的消息。据我所知,管理这些消息的唯一方法是通过 CF Admin GUI 一次处理 10 条消息。
我正在寻找一种方法来加快这个过程。我想清除队列,或批量发送它们。
有谁知道如何做到这一点?
谢谢,
-戴夫
进入文件系统并将文件从 cfusion/mail/undelivr 移动到 cfusion/mail/spool。简单的!
看看 Ray Camden 的 SpoolMail ( http://spoolmail.riaforge.org/ )。这是一个非常方便的插件,您可以将其添加到您的所有服务器中,并将您的电子邮件批量移动到假脱机并重新发送它们。
如果您移动了您的邮件服务器并且假脱机似乎永远不会清空,您需要打开每个 .cfmail 文件并更改 IP 号码。我也移动了我的邮件服务器,当我把它恢复过来时,我忘记在 CF Admin 中更改邮件的 IP 设置,到第二天我的假脱机中就有 21,000 封电子邮件。啊。我本可以在其上运行一个 cf 脚本来打开每个脚本,更改 IP 号,然后将文件移动到 spool 目录中,但我选择不从下载 dot com 下载免费的搜索和替换实用程序。像魅力一样工作。完成完整的 s&r 大约需要 20 分钟,然后再用几秒钟的时间将它们全部移动。
有人在某个时候向我发送了一个片段,该片段会尝试在某个时候定期重新处理队列,但是对于我的一生,我无法找到它或在谷歌上看到它。- 对不起。
但是:无法投递的队列只是一堆文件,您可以自己编写一个小应用程序,它会尝试定期重新处理队列并删除那些在无法投递时间过长的队列。
我很确定假脱机只尝试发送一次邮件
只需将文件移回假脱机目录即可让假脱机程序“重试”
您必须保留一个文件或数据库来跟踪已尝试的内容和次数。
我还会发送有关已删除内容的通知 - 或至少记录它。
-肖恩
PS>9000?你的流量怎么样?如果您有那么多无法交付的东西,我怀疑会有问题....
您应该编写简单的 CF 程序来跟踪和删除未送达的邮件。
使用 cfdirectory 标记。
文件系统是最简单的方法。
要尝试重新发送电子邮件,请将 ~\ColdFusion2016\cfusion\Mail\Undelivr 中的文件移动到 ~\ColdFusion2016\cfusion\Mail\Spool。
如果您只是不关心这些电子邮件文件,那么只需删除它们即可。
我将我的开发邮件服务器指向无处(smtp.gmail.com.dontSend),所以没有邮件出去,他们都只是堆积在未投递中。这样,我的开发团队的其他成员就不会收到我通过电子邮件生成和捕获的所有错误。更重要的是,没有任何测试电子邮件会意外发送到真实账户。
我在测试时进入 CF-Administrator 查看和管理我未送达的邮件,但如果/当它变得很大时,我只是从文件系统中删除它们。