我想将所有垃圾邮件(未被完全拒绝的)重定向到本地用户的邮箱spam
(即将邮件发送给spam
用户而不是原始本地收件人)。
我在 Debian 上使用sa-exim
(exim 4 + spamassasin 3.2)(它有自己exim4.conf.template
复杂的配置)。
我尝试添加以下路由器(在 exim 之前real_local
):
spams:
debug_print = "R: spams $local_part@$domain"
driver = redirect
condition = ${if def:h_X-Spam-Flag {1}{0}}
allow_fail
allow_defer
check_local_user
domains = +local_domains
data = spam@localhost
但似乎根本没有被触发。
答案1
仔细检查新路由器是否被 exim 使用
grep spams /var/lib/exim4/config.autogenerated
然后进行一些调试,例如:
cat message-with-header.txt | exim -bm -t -d+route
您应该看到它在每个路由器中运行,因此请检查它是否在您的路由器中运行,并希望告诉您它为什么不工作(条件失败、早期的路由器已经接收了消息等)
答案2
对于我来说,使用以下条件效果很好:
condition = "${if def:h_X-Spam-Flag: {yes}{no}}"