2014-05-17 14 views
1

看起來好像我的全部別名不起作用。 當我使用使用mysql配置後綴中的全部別名

postmap -q [email protected] mysql:/etc/postfix/mysql-virtual-alias-maps.cf 

沒有輸出。 但是,當我命令

postmap -q [email protected] mysql:/etc/postfix/mysql-virtual-alias-maps.cf 

輸出

[email protected] 

我該如何解決這個問題?

的配置查詢是:

query= SELECT destination FROM virtual_aliases WHERE source='%s' 

表virtual_aliases:

id domain_id source    destination 
5 1   @example.org  [email protected] 
7 1   [email protected] [email protected] 
8 1   [email protected] [email protected] 

表virtual_domains:

id name 
1 example.org 

表virtual_users:

id domain_id password email 
1 1   pwd   [email protected] 

回答

2

mysql查詢應該是

SELECT destination FROM virtual_aliases WHERE source='%s' 
UNION ALL 
SELECT destination FROM virtual_aliases WHERE source='@%d' 
AND NOT EXISTS (SELECT destination FROM virtual_aliases WHERE source='%s') 
+0

感謝本聲明的工作。重要的是把這個聲明寫在一行中。 – rohx

+0

雅我爲了清晰起見在單獨的一行中寫了它 – clement