我有一个使用phpmailer发送电子邮件的网页。我将主机设置为'relay-hosting.secureserver.net',将mail-> sender,mail-> from和mail-> addReplyTo all设置为相同的地址,这是我希望发送退回的电子邮件通知的地址至。此电子邮件地址也包含相同的主机和smtp主机。当我输入错误的电子邮件地址时,我没有收到未送达的通知。我究竟做错了什么?感谢
答案 0 :(得分:1)
PHPmailer不处理接收电子邮件。它纯粹是一个允许PHP与SMTP服务器通信以发送电子邮件的库。它完全没有任何支持充当邮件客户端(例如接收)。
PHPmailer无法知道电子邮件是否被退回,因为在PHPmailer将电子邮件发送到外发SMTP服务器后Lounce发生了很长时间。在现实世界中,PHPmailer会收到你的信件,然后走下街区将其放入邮箱。反弹发生在以后,当信件承运人带回信件并在其上盖上“返回寄件人”时 - PHPmailer根本不参与此事。
您的选择是:
1)使用PHP的imap函数连接到现有的pop / imap服务器,并以那种方式检索电子邮件
2)在SMTP端使用.forward
或类似的重定向将“传入的电子邮件”“发送”到PHP脚本。
答案 1 :(得分:0)
我知道这是一个陈旧且已回答的问题,但对于那些稍后可能会发现类似问题的帖子,您可以通过转到smtp邮件中继服务来解决这个问题。例如,如果您使用jangosmtp,则jangosmtp控制面板中有一个选项可以硬编码应发送退回报告的地址,也可以始终将退回报告发送到发件人地址。