如何在OSX上测试从Web应用程序发送电子邮件?

时间:2010-06-21 15:54:08

标签: django macos sendmail postfix-mta

我有一个在本地运行的Django应用程序,我想测试“send_mail()”功能。目前,我可以在终端中使用以下命令打开postfix:

sudo postfix start

打开postfix后,我在终端中运行以下命令:

telnet localhost 25

这两个步骤似乎正在起作用,因为“send_mail()”函数不会失败或导致异常。不幸的是,我不确定接下来我应该做什么来查看它发送的电子邮件。我试图将Mail.app配置为连接到localhost,但没有运气。

有没有人能够深入了解我需要做什么才能看到postfix发送的电子邮件?

4 个答案:

答案 0 :(得分:6)

您可以尝试使用django电子邮件测试服务器吗?

请参阅http://docs.djangoproject.com/en/dev/topics/email/#testing-e-mail-sending

上的文档

电子邮件只会在您发送时列出。

答案 1 :(得分:2)

Postfix将尝试将邮件传递到您指定的系统。这可能由于各种原因而失败,例如:

  1. 地址不存在。
  2. 远程邮件服务器拒绝了它。
  3. 您的ISP阻止端口25出站,因此后缀无法提供任何内容。
  4. 您可以使用sendmail别名mailq查看排队的邮件(需要sudo)。 Postfix还会在/var/log

    中保留详细的日志

    如果您要发送到@localhost,您还需要在系统上设置POP3或IMAP服务器,以便Mail.app能够阅读电子邮件。不使用Mail.app,您可以找到系统邮件假脱机(/var/mail是常见的地方)。

答案 2 :(得分:1)

查看postfix的日志或邮件队列。如果消息正在队列中构建,那么接下来要做的是配置你的postfix以将消息转发到远程MTA ......这是一个serverfault.com问题;)。

答案 3 :(得分:1)

电子邮件测试服务器很棒,但很难预览html电子邮件。无耻的插件,但我developed an app来帮助它。

将其添加到您的INSTALLED_APPS并将EmailBackend指向它,您就完成了。电子邮件将存储在数据库中,您可以在管理员中查看它们,包括HTML多部分。