2009-06-11 46 views
-1

我有我的/ etc /後綴/虛擬文件:Postfix的虛擬:父域匹配的子域 - 我不希望它

sub.domain.com DOMAIN 
@sub.domain.com user2 

domain.com DOMAIN 
@domain.com user1 

爲@ sub.domain.com郵件還是到user1和這不是我想要的。 這裏是我的/etc/postfix/my.cnf只是個案:

mydomain = domain.com 
myhostname = mail.domain.com 
alias_maps = hash:/etc/aliases 
alias_database = hash:/etc/aliases 
virtual_alias_maps = hash:/etc/postfix/virtual 
myorigin = $mydomain 
mydestination = $myhostname, $mydomain, localhost 
relayhost = 
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 
mailbox_size_limit = 1073741824 
recipient_delimiter = + 
inet_interfaces = all 
parent_domain_matches_subdomains = 

注意,我設置parent_domain_matches_subdomains空。但它仍然沒有幫助。有任何想法嗎?

回答

1

virtual_alias_maps表的右側是非限定用戶名。

後綴追加$ myorigin不合格的用戶名,使之有效地

@ sub.example.com [email protected] @ example.com [email protected]

現在[email protected]被@ example.com抓住了。

因此,用於[email protected]的郵件轉到user1。

你可以你的Postfix配置改成這樣:

 
mydomain = example.com 
myhostname = mail.example.com 
alias_maps = hash:/etc/aliases 
alias_database = hash:/etc/aliases 
virtual_alias_maps = hash:/etc/postfix/virtual 
myorigin = $mydomain 
mydestination = $myhostname, $mydomain, localhost 
relayhost = 
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 
mailbox_size_limit = 1073741824 
recipient_delimiter = + 
inet_interfaces = all 
parent_domain_matches_subdomains = 
virtual_alias_domains = sub.example.com 
luser_relay = [email protected] 

的/ etc /後綴/虛擬
@ sub.example.com [email protected]

創建兩個系統賬戶user1和user2 。

+0

稍微簡單的解決方案,但你的答案幫助我找到它:我只在@ etc/postfix/virtual文件中將@localhost附加到user1和user2。 – snitko 2009-06-11 11:08:47