我的总体任务如下:
- 我们有可行的应用程序,可以向用户(根据某些操作在此应用程序中注册的用户)发送邮件;
- 正在使用 sendmail 工具发送邮件;
- 为了测试更改,我们的 sendmail 工具使用了智能主机。实际上,电子邮件并未发送,因为否则在测试步骤中我们会向真实用户发送垃圾邮件。
- 我无法访问此智能主机配置,并且几乎从未与配置此功能的管理员交谈。
- 现在我需要为已发送的电子邮件添加退回跟踪。但使用当前的 smart_host 配置,这是不可能的。
- 所以我需要一些替代解决方案来进行测试。一方面,我无法发送真实的电子邮件(因为它会向真实的用户发送垃圾邮件);另一方面,我需要有重现退回邮件的可能性才能继续开发。
您能否建议一些文档来快速完成此操作?
一般来说我需要:
- SendMail 工具将使用的另一个 SMTP 服务器;
- 该服务器应该有一些规则来配置退回功能。例如,当我发送一些电子邮件时,电子邮件被退回;
- 之后我将能够适当地处理这次反弹。
或者您能否提供一些关于如何测试反弹的另类看法?
答案1
测试和开发的一般规则是在具有测试数据的测试系统上进行......
如果您没有适当的带有测试数据的测试服务器,请至少创建几个测试用户,这样您就不会向真实用户发送垃圾邮件。
理论上,传递错误通知会返回给发件人,因此第一种方法是正确配置您的电子邮件,在信封发件人、发件人和返回路径标头中使用有效的电子邮件地址,这样它们就不会是 nobody@hostname 或 apache@localhost。
当调用 sendmail 时,不要直接调用 sendmail,而要添加几个命令行开关来强制使用有效的发件人电子邮件地址,例如:[电子邮件保护]和:
/usr/sbin/sendmail -t -i [email protected] [email protected]