电子邮件过滤器筛子只能激活一个脚本是否有原因?
> list
"mailinglists.sieve"
"spam.sieve" ACTIVE
> activate mailinglists.sieve
> list
"mailinglists.sieve" ACTIVE
"spam.sieve"
>
我看不到这里的逻辑......我做错了什么?
电子邮件过滤器筛子只能激活一个脚本是否有原因?
> list
"mailinglists.sieve"
"spam.sieve" ACTIVE
> activate mailinglists.sieve
> list
"mailinglists.sieve" ACTIVE
"spam.sieve"
>
我看不到这里的逻辑......我做错了什么?
大多数电子邮件筛子服务器都希望运行一个“主”筛子脚本。由于运行 sieve 命令的顺序很重要,因此您需要有一些方法来指定文件应该执行的顺序。
因此,处理此问题的标准方法是使用RFC 6609中定义的“包含”扩展名。您可以拥有一个主筛子脚本,并根据需要包含其他筛子脚本。服务器管理员还可以定义任何用户都可以包含的“全局”脚本,例如Dovecot Pigeonhole 的sieve_global_dir
配置行。
来自 RFC 的示例用法:
require ["include"]; include :personal "always_allow"; include :global "spam_tests"; include :personal "spam_tests"; include :personal "mailing_lists";
为了增加答案,如果您要为 Dovecot 配置多个顺序筛子脚本,那么您可以使用 sieve_beforeX= 和 sieve_afterX= 参数,如下所述:https ://wiki2.dovecot.org/Pigeonhole/Sieve/Configuration #Executing_Multiple_Scripts_Sequentially
例如:
sieve_before = /usr/local/lib/dovecot/sieve/spam.sieve
sieve_before2 = /usr/local/lib/dovecot/sieve/ham.sieve
sieve_before3 = /usr/local/lib/dovecot/sieve/check.sieve
sieve_after = /usr/local/lib/dovecot/sieve/move.sieve
sieve_after2 = /usr/local/lib/dovecot/sieve/flag.sieve