如何配置PHP以将所有外发邮件发送到我自己的帐户,以便我可以测试业务应用程序而无需实际向不知情的企业发送邮件,例如“恭喜,您有一个新帐户。您需要支付$ xxx“?
答案 0 :(得分:2)
不是配置PHP,而是一个通用的解决方案就是建立虚拟SMTP服务器。
请参阅this question。
答案 1 :(得分:0)
所以你已经编写了应用程序并使用了实时电子邮件地址,现在你想测试它吗?您是否使用集中功能进行邮件或是否有大量的mail()调用代码?抱歉,您将不得不更改每个mail()电话。帮自己一个忙,用自己的功能替换它们,然后在那个位置处理测试/实时功能。
答案 2 :(得分:0)
您可以将运行PHP的服务器上的所有端口25流量重定向到邮件服务器/端口,该邮件服务器/端口会向您发送所有邮件。
这是我所知道的唯一100%万无一失的方法。
答案 3 :(得分:0)
您可以创建Google Apps帐户(或使用您的虚拟服务器),创建一个包罗万象的电子邮件帐户并将其发送到域。您所要做的就是查看全能帐户。
答案 4 :(得分:0)
我找到了这个网站:http://dummysmtp.com/。
我的服务器正在运行qmail,所以我编辑了/ var / qmail / control / smtproutes的内容,如下所示:
:smtp.dummysmtp.com 用户名 密码
当我发送一封带有PHP mail()的简单邮件时,它有效,但后来我发现邮件仍然传递给其他人。我不得不爬进代码的内容,发现了这个:
/* Choose the mailer */
switch($this->Mailer) {
case 'sendmail':
$result = $this->SendmailSend($header, $body);
break;
case 'smtp':
$result = $this->SmtpSend($header, $body);
break;
case 'mail':
$result = $this->MailSend($header, $body);
break;
default:
$result = $this->MailSend($header, $body);
break;
//$this->SetError($this->Mailer . $this->Lang('mailer_not_supported'));
//$result = false;
//break;
}
所以我必须确保每个选项都配置为将其邮件发送到dummysmtp.com。一旦我明白了,这一切都奏效了。