Postfix虚拟化安装程序不在本地提供根邮件

我有一个与MySQL和dovecot后缀虚拟设置。 一切工作正常,目前唯一的问题是,邮件根不是本地发送,因为它应该是。 相反,postfix将发送到“root”的邮件扩展为“[email protected]”。 由于没有虚拟邮箱为[email protected],他们无法交付:

Nov 17 03:20:26 xxx postfix/qmgr[16914]: E49903AB4045: from=<[email protected]>, size=783, nrcpt=1 (queue active) Nov 17 03:20:26 xxx postfix/pipe[17901]: E49903AB4045: to=<[email protected]>, orig_to=<root>, relay=dovecot, delay=626, delays=625/0.01/0/0.17, dsn=4.1.1, status=SOFTBOUNCE (user unknown) 

为了解决这个问题,我尝试了一下

http://www.postfix.org/STANDARD_CONFIGURATION_README.html#some_local

并添加一个根别名到我的SQL虚拟别名地图:

 | address | goto | domain | created | modified | active | +---------------+------------------+---------------+---------------------+---------------------+--------+ | root | root@localhost | localhost | 2013-11-18 11:20:00 | 2013-11-18 11:20:00 | 1 | 

至less它现在已经改变了一些,但是它仍然不起作用,因为现在域名已经扩展到了[email protected]

 Nov 18 11:36:39 xxx postfix/qmgr[16914]: 0741763B6001: from=<[email protected]>, size=316, nrcpt=1 (queue active) Nov 18 11:36:39 xxx postfix/smtp[30046]: 0741763B6001: to=<[email protected]>, orig_to=<root>, relay=none, delay=11, delays=11/0/0.52/0, dsn=4.4.6, status=SOFTBOUNCE (mail for localhost.example.com loops back to myself) 

从我的main.cf:

 mydestination = localhost.localdomain, localhost mydomain = example.com myhostname = mail.example.com myorigin = $mydomain smtpd_recipient_restrictions = permit_mynetworks,reject_non_fqdn_recipient,permit_sasl_authenticated,reject_unauth_destination,reject_rbl_client zen.spamhaus.org,pcre:/etc/postfix/dspam_filter_access virtual_alias_maps = mysql:/etc/postfix/sql_virtual_alias_maps.cf virtual_mailbox_domains = mysql:/etc/postfix/sql_virtual_domain_maps.cf virtual_mailbox_maps = mysql:/etc/postfix/sql_virtual_mailbox_maps.cf 

据我所知,Postfix应检查sql_virtual_alias_maps,将邮件转发到root root@localhost ,并尝试在本地提供。

我在做什么错了,我怎么让后缀在本地提供这些根邮件?

好的,我修好了。 问题是参数

 append_dot_mydomain 

默认设置为yes 。 设置后

 append_dot_mydomain = no 

,在main.cf ,它正在工作。

它看起来像试图自我转发,你有没有任何机会定义你的数据库中的“goto”字段是转发地址? 如果是这样,尝试删除该转发,看看是否有帮助