首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将PHP配置为仅将所有邮件发送到一个帐户

将PHP配置为仅将所有邮件发送到一个帐户
EN

Stack Overflow用户
提问于 2010-07-28 01:40:02
回答 5查看 364关注 0票数 1

如何配置PHP将所有外发邮件发送到我自己的帐户,这样我就可以测试业务应用程序,而无需向毫无戒备的企业发送邮件,例如“恭喜,您有了一个新帐户。您将为$xxx付费”?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-07-28 02:42:36

我找到了这个网站:http://dummysmtp.com/

我的服务器正在运行qmail,所以我编辑了/var/qmail/control/smtproutes的内容,如下所示:

:smtp.dummysmtp.com用户名密码

当我使用PHP mail()发送一封简单的邮件时,它可以工作,但后来我发现邮件仍然会传给其他人。我不得不爬进代码的内部,发现了以下内容:

代码语言:javascript
复制
/* 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。一旦我弄清楚了这一点,一切都奏效了。

票数 0
EN

Stack Overflow用户

发布于 2010-07-28 01:42:07

一般的解决方案不是配置PHP,而是建立一个虚拟的SMTP服务器。

参见this question

票数 2
EN

Stack Overflow用户

发布于 2010-07-28 01:42:20

您已经编写了应用程序,并且它使用了实时电子邮件地址,现在您想要测试它吗?你是对邮件使用了一个集中的函数,还是在整个代码中有大量的mail()调用?抱歉,您必须更改每个mail()调用。帮你自己一个忙,把它们都替换成你自己的函数,然后在那个地方处理测试/实时功能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3346305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档