我有一个运行Postfix的Debian服务器。 在文件/etc/postfix/main.cf有这一行:
mailbox_command_maps = pcre:/etc/postfix/mailbox-pcre
文件/etc/postfix/mailbox-pcre包含这样的行:
/^action/ /usr/sbin/takeaction -q /^filter/ /usr/bin/filter-special /^archway/ /usr/bin/archway2
我有一个新的情况,我希望所有的电子邮件与“testing”开始的To:地址通过Perl脚本运行。 我在文件/ etc / postfix / mailbox-pcre中添加了一个新条目,如下所示:
/^action/ /usr/sbin/takeaction -q /^filter/ /usr/bin/filter-special /^archway/ /usr/bin/archway2 /^tester/ /usr/bin/tester
我添加了这一行,并重新启动后缀。 当我发送电子邮件给tester的电子邮件地址时,我收到“未知用户”错误。 所以必须有其他我需要做的事情,以便postfix识别tester的电子邮件地址。
我还需要做什么?
用户tester必须定义为本地用户(通过列为系统用户或在local_recipient_maps中定义)。
另一个解决scheme是在alias_maps中定义你的命令。 例如
#main.cf alias_maps = hash:/etc/aliases, pcre:/etc/aliases.pcre #pcre:/etc/aliases.pcre /^tester/ "|/usr/bin/tester" /^action/ "|/usr/sbin/takeaction -q" /^filter/ "|/usr/bin/filter-special" /^archway/ "|/usr/bin/archway2"
这个答案启发了这个线程