2011-03-14 51 views
5

有没有人知道如何在postfix中处理虚拟邮箱的传入邮件? 我正在构建Web应用程序,用户通过向应用程序发送电子邮件添加新内容。 用于每个用户的电子邮件地址是自定义的(例如,[email protected]),并且它被动态创建为Postfix虚拟邮箱。用户需要能够发送电子邮件到他的自定义邮箱地址([email protected]),我想处理每个传入的电子邮件,解析它的内容并使用电子邮件中的数据填充我的数据库。 我尝试使用Postfix After Queue filter但我真的不会是处理电子邮件,一旦它们被保存在用户的虚拟邮箱文件夹。Postfix - 如何处理传入的电子邮件?

+0

属于上http://serverfault.com – 2011-03-14 13:28:12

+1

我会问它serverfault.com。谢谢! – 2011-03-14 13:38:20

+0

你不需要在那里发布它。只要有5人投票支持迁移,系统就会自动迁移该问题。 – 2011-03-14 13:43:34

回答

12

我能想到的两种可能的解决方案是:

第一种可能性:你可以在Postfix中设置自定义mailbox_command。对于后缀收到的每封电子邮件,它会调用配置文件中定义的mailbox_command和所提供的电子邮件以纯文本上stdin。这样,您可以决定如何处理每封电子邮件。不过你必须自己解析电子邮件的标题。你可以看看Postfix documentation以获得更多有关如何完成这项工作的想法。其他应用程序,如procmail也可以充当mailbox_command并帮助您处理传入的邮件。

第二种可能性:使用达夫科特来存储电子邮件。您无需启用Dovecot的POP/IMAP模块。但是,Dovecot带有奇妙的doveadm实用程序,它允许您查询邮箱并从邮箱中读取。通过doveadm,您可以自动选择新电子邮件,上周发送的电子邮件,阅读整个电子邮件,只是其中的一部分,删除旧邮件等等。这是一个强大的工具,我用它在各种脚本中清除旧邮件或为用户提供learn-as-spam文件夹。看看wiki上的the documentation

+0

'mailbox_command'非常适合处理传入消息,谢谢。你知道任何传出的东西吗? – Mehran 2013-04-27 10:14:38

+0

我该如何将消息细节传递给'''mailbox_command'''''命令/脚本? – Radu 2015-12-28 13:57:09