用CakePHP和Postfix处理电子邮件回退

用CakePHP和Postfix处理电子邮件回退,php,email,cakephp,postfix-mta,Php,Email,Cakephp,Postfix Mta,我正在尝试处理跳转消息并发送给负责的系统管理员 我使用CakePHP电子邮件组件发送消息。在服务器端,我使用postfix来传输消息 function sendAsEmail($data) { $Email->sendAs = 'html'; $Email->from = $user['Sender']['username'] . '@example.com'; $Email->return = Configure::read('App.systemAdminEma

我正在尝试处理跳转消息并发送给负责的系统管理员

我使用CakePHP电子邮件组件发送消息。在服务器端,我使用postfix来传输消息

function sendAsEmail($data) {
  $Email->sendAs = 'html';
  $Email->from = $user['Sender']['username'] . '@example.com';
  $Email->return = Configure::read('App.systemAdminEmail');
  $Email->bcc = array($data['Message']['recipient_text']);
  $content = 'Some content';
  $Email->send($content);
}
正如您在上面看到的,我设置了$Email->returntosysadmin的电子邮件,它将发送所有被反弹的消息

在postfix配置中,我尝试创建bounce.cf模板并设置bounce_模板_文件


如何获取被反弹的消息并将其发送给系统管理员?

我认为您需要做的是为PHP使用SMTP(或者我假设为POP3)连接器。然后,您基本上必须创建自己的PHP电子邮件客户端,该客户端将登录到服务器,请求已跳转的消息,并对其进行适当的解析

我想会有一个CakePHP组件用于此,但我找不到

我建议您在电子邮件中使用信封标题。否则,您将被困在解析收件人服务器跳出的过程中,而这些过程非常不一致。如果使用VERP(variable envelope return protocol?)

有关VERP的更多信息:

蛋糕专用VERP材料:


我还强烈建议您考虑使用SwiftMailer。它有很多插件;您可能会找到一个基本的PHP SMTP客户端,您可以轻松地修改它来完成所需的工作

。。。你的问题是什么?