1

我正在使用 PHPMailer 发送电子邮件并将邮件详细信息保存到数据库中。我想使用 Exim stats 的日志来查看交付是否有问题。Exim stats 有一个 mysql 数据库,其中包含通过 SMTP 发送的所有外发邮件的日志,但我需要消息 ID (msgid) 才能将日志条目连接到我的电子邮件表。

有任何想法吗?我可以在发送邮件后获取mailid / 或在发送前手动设置它吗?

4

1 回答 1

0

我正在使用 PHPMailer 发送电子邮件并将邮件详细信息保存到数据库中。我想使用 Exim stats 的日志来查看交付是否有问题。Exim stats 有一个 mysql 数据库,其中包含通过 SMTP 发送的所有外发邮件的日志,但我需要消息 ID (msgid) 才能将日志条目连接到我的电子邮件表。

这完全取决于您发送电子邮件的方式;我不认为使用 PHP 的本机mail () 函数可以做到这一点,但您可以使用更复杂的库(例如SwiftMailer )来做到这一点。SwiftMailer 确实提供了一个 getId() 方法,它似乎可以满足您的需求。

此外,当您使用 Swift 的 SMTP 传输时,您可以看到 SMTP 会话中发生了什么;如果会话本身失败,这是可见的。

于 2012-06-22T07:31:12.630 回答