如果没有为该用户设置帐户,我想只将本地域的所有传入电子邮件路由到单个帐户。
我也想每个电子邮件都写在它自己的文件在用户文件夹中。
我有一个catchall用户/ home / catchall / path这里有一个邮件文件夹,但是到目前为止,邮件不能传递(因此我的规则不起作用),或者他们传递给/ etc / mail / catchall文件。
我一直在尝试从Eximconfiguration中整合一些东西,但到目前为止似乎没有任何工作。
http://exim.org/exim-html-current/doc/html/spec_html/ch20.html
设置Exim以捕获发送到本地域的所有电子邮件:
后:
begin routers
加:
catchall_pub: driver = redirect domains = +local_domains user = catchall data = catchall@localhost
这将启用所有的local_domains。 他们是这样设置的:
domainlist local_domains = @ : localhost : localhost.localdomain : example.com
注意:您可以简单地指定捕获单个域,并为多个域制定多个规则。
为了configurationExim为每个电子邮件创build单个文件,您只需将本地交付切换到目录模式,如下所示:
找:
local_delivery: driver = appendfile file = /var/mail/$local_part delivery_date_add envelope_to_add return_path_add group = mail mode = 0660
添加代替file = /var/mail/$local_part :
directory = $home/mail maildir_format maildir_use_size_file
注意:当他收到第一封电子邮件时,会自动在用户的个人文件夹中创build一个不错的邮件目录。 结构是众所周知的cur /,new /,tmp / one。
不太清楚你真的想说什么“每封电子邮件都写在它自己的文件中”
如果你已经使用maildir格式,所有消息都存储在单独的文件中。 只需在所有存在的地方添加特殊路由器:
unknown: driver = redirect domains = +local_domains data = [email protected]
如果您使用的是邮箱格式,并且要将特定用户的邮件存储到自己的邮箱文件中,请使用特殊传输:
# router unknown: driver = accept domains = +local_domains transport = t_unknown # transport t_unknown: driver = appendfile file = /var/mail/$domain/$local_part group = mail user = $local_part mode = 0660