使用带有 Maildir 设置的 Dovecot,我尝试使虚拟“全部”和虚拟“标记”邮箱正常工作。 我已经使所有其他典型邮箱正常运行(存档、垃圾箱等...)
此处的信息(https://doc.dovecot.org/configuration_manual/virtual_plugin/) 并没有真正涉及如何与虚拟邮箱进行实际交互。
我的 15-mailboxes.conf 看起来像这样(片段):
namespace inbox {
# These mailboxes are widely used and could perhaps be created automatically:
mailbox Archive {
auto = subscribe
special_use = \Archive
}
mailbox Drafts {
auto = subscribe
special_use = \Drafts
}
...
# If you have a virtual "All messages" mailbox:
mailbox virtual.All {
auto = create
special_use = \All
comment = All my messages
}
# If you have a virtual "Flagged" mailbox:
mailbox virtual.Flagged {
auto = create
special_use = \Flagged
comment = All my flagged messages
}
}
当我查看用户目录时,我看到创建了以下文件夹:
drwxrwx---. 5 vmail vmail 135 Jan 25 17:01 .virtual.All/
drwxrwx---. 5 vmail vmail 158 Jan 25 17:14 .virtual.Flagged/
[.virtual.Flagged]# ll
total 20
drwxrwx---. 5 vmail vmail 158 Jan 25 17:14 ./
drwxrwx---. 20 vmail vmail 4096 Jan 25 17:33 ../
drwxrwx---. 2 vmail vmail 6 Jan 25 16:58 cur/
-rw-rw----. 1 vmail vmail 868 Jan 25 16:58 dovecot.index.cache
-rw-rw----. 1 vmail vmail 384 Jan 25 17:01 dovecot.index.log
-rw-rw----. 1 vmail vmail 51 Jan 25 17:01 dovecot-uidlist
-rw-r--r--. 1 vmail vmail 8 Jan 25 17:14 dovecot-virtual
-rw-rw----. 1 vmail vmail 0 Jan 25 16:58 maildirfolder
drwxrwx---. 2 vmail vmail 6 Jan 25 16:58 new/
drwxrwx---. 2 vmail vmail 6 Jan 25 16:58 tmp
dovecot-虚拟:
*
flagged
我已经实施了其他一些相关配置:
10-邮件.conf:
namespace inbox {
type = private
separator = .
prefix = INBOX.
inbox = yes
}
20-imap.conf:
protocol imap {
# Space separated list of plugins to load (default is global mail_plugins).
mail_plugins = $mail_plugins imap_quota virtual
}
我的假设是,当我将收件箱中的电子邮件标记为“已标记”(并且我可以确认已设置 \Flagged 标志)时,我应该能够(1)在 virtual.Flagged 文件夹中查看该邮件的副本,或者(2)当我使用 imap 命令获取消息编号或其他内容时,它应该返回收件箱中标记的消息。
旁注:此设置使用 php-imap 库与 Dovecot 交互。
任何帮助,或者只是关于虚拟/所有虚拟/标记目录如何工作的概念都将非常感谢。
答案1
在官方 Dovecot 邮件列表的帮助下我终于解决了这个问题:
https://dovecot.org/pipermail/dovecot/2022-February/124060.html