简而言之:我需要将邮件从Exim保存到网络目录中,但理想情况下,我希望将这些文件保存为单独的文件,而不是附加到邮箱中。
长版本:我有一个解析邮件的PHP脚本。目前,它位于与邮件服务器相同的邮箱中,允许我通过管道将邮件直接传输到PHP脚本--很简单。
很快,我的邮件服务器将托管在一个单独的(通过NFS连接的)服务器上。我最初的计划是创建一个指向邮箱的符号链接,并安排脚本通过cron解析邮件,在解析邮件后将其删除。
问题是邮件是以mbox格式存储的,即附加到单个文件中。由于PHP不能可靠地使用NFS上的文件锁,我担心我的脚本会将执行过程中到达的新邮件丢弃。
那么,我可以让Exim将每个邮件保存到一个单独的文件中,而不是将邮件写到一个文件中吗?
谢谢你的建议。
发布于 2012-06-25 22:33:47
简而言之,您可以对邮箱使用maildir,而不是mbox。
在Exim4和Maildir设置中查看此how-to。
您还可以使用PHP IMAP扩展来访问本地邮件服务器。这样,每封邮件也将被独立解析,并允许您在不更改邮件服务器配置的情况下访问单个文件。
https://stackoverflow.com/questions/11191130
复制相似问题