Maildir“new”有消息但收件箱是空的

Hei*_*ade 3 email-server postfix imap dovecot maildir

我正在新的操作系统中安装新的邮件服务器 (Postfix/Dovecot+Maildir)。

使用 Thunderbird(或 Squirrelmail)我可以发送邮件,但即使我可以在/home/<mailuser>/Maildir/new.

可能是什么问题呢?如有必要,我会附上任何 conf 文件。

编辑:dovecot 配置mail_location = maildir:/%Lh/Maildir/:INDEX=/%Lh/Maildir/ 就像 Damiano 说的那样,Postfix 和 Dovecot 邮件文件夹不匹配。

Dam*_*lli 9

您可能不会在 Postfix 和 Dovecot 中共享相同的邮箱位置/文件夹和/或邮箱传递方式(MBOX 与 MDIR)。因此,Postfix 正在(正确地)写入“ /home/mailuser/Maildir ”(您看到邮件到达的位置,位于“new”子文件夹下),但由于 dovecot 正在其他地方搜索......它没有找到此类邮件(因此您会从中收到“无邮件”)。

作为第一项检查,您应该:

  • Postfix:检查/etc/postfix/main.cf中的home_mailbox参数:

# The home_mailbox parameter specifies the optional pathname of a
# mailbox file relative to a user's home directory. [...]  Specify
# "Maildir/" for qmail-style delivery (the / is required).
#
home_mailbox = Maildir/
Run Code Online (Sandbox Code Playgroud)
  • Dovecot:按照@Kondybas 的建议,检查 mail_location 参数(在 CentOS 6.5 中,位于 /etc/dovecot/conf.d/10-mail.conf):

# See doc/wiki/Variables.txt for full list. Some examples:
#
#   mail_location = maildir:~/Maildir
#   mail_location = mbox:~/mail:INBOX=/var/mail/%u
#   mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n
#
# <doc/wiki/MailLocation.txt>
#
mail_location = maildir:~/Maildir
Run Code Online (Sandbox Code Playgroud)

上面的两个指令告诉 Postfix 和 Dovecot在/home/userN/Maildir的 Maildir 结构下存储“ userN ”的传入邮件,其主目录是/home/userN

如果是“虚拟”用户(用户没有在机器上定义适当的 unix 帐户),事情会稍微复杂一些,在这种情况下,Postfix 和 Dovecot 都需要共享获取/计算userN的 home-dir 的方法