将通过 PHP 的 mail() 函数发送的所有电子邮件重定向到单个外部地址

将通过 PHP 的 mail() 函数发送的所有电子邮件重定向到单个外部地址

我目前在我的桌面(OS X 10.6.7)上运行着 php,能够通过在 /etc/postfix 中将“relayhost”设置为我的 ISP 并在 /etc/postfix/relay_password 中有一个条目,通过 mail() 函数发送电子邮件。

我希望发生的情况是(因为这是一台开发计算机)所有通过 PHP 的 mail() 函数发送的电子邮件都只传递到一个外部地址(这样它就会显示在我的 Mail.app 收件箱中)。

在 /usr/local/lib/php.ini 中我尝试设置“sendmail_path = sendmail -i $email”,但它仍然被传送到 php 脚本中对 mail() 的调用中指定的地址。

我见过如何将所有外发电子邮件从 Postfix 重定向到单个地址以进行测试,但这对我没有帮助。

答案1

您可以尝试以下操作:

recipient_canonical_maps = pcre:/etc/postfix/recipient_canonical.pcre

然后放入一个 catch-all /etc/postfix/recipient_canonical.pcre

/.*/ [email protected]

答案2

为可执行文件或其当前使用的等效文件编写一个包装器sendmail,重写目标,并将脚本路径放入sendmail_path

相关内容