寻找Postfix virtual_mailbox_maps查找仅用于用户名,而不是电子邮件地址

时间:2018-10-09 19:19:24

标签: postfix-mta

我有一个后缀,用于接收2个域的邮件,例如example.org,example.com和example.net。

我有一个用于三个域的邮箱。发送到USERNAME @ example.org,USERNAME @ example.com和USERNAME@example.net的电子邮件将转到同一邮箱。

我使用后缀来管理域,帐户和别名。

我使用:

virtual_mailbox_maps = pgsql:/etc/postfix/scripts/sql_virtual_mailboxes.cf

与查询:

user = username
password = password
hosts = localhost
dbname = mail
query = SELECT 1 FROM virtual_users WHERE domain='%s' AND active = '1'

这正常工作,但是它迫使我在表virtual_users中添加3个条目以及3个可能的电子邮件和相同的密码,因为我希望用户使用这三个域中的任何一个来发送电子邮件并进行身份验证。

我只想使用USERNAME来修改表virtual_users,并找到一个查询来检查USERNAME是否存在,而不是今天的完整电子邮件。

如何修改virtual_mailbox_maps查询以仅检查USERNAME而不检查完整的电子邮件?

1 个答案:

答案 0 :(得分:0)

用%n(用户名)替换%s(电子邮件)

4