【发布时间】:2015-01-29 00:24:02
【问题描述】:
这个原本有效的方法会导致邮件客户端将“接收”时间误解为快 5 小时。这是唯一使用的配方。在比较写入两个标题的日期/时间时,基本上没有区别。有什么好的解决方法?食谱可以补偿吗?
LOGFILE=$HOME/proclog
VERBOSE=YES
# prevent qmail (the program that is calling procmail
# as a filter) from delivering the original mail.
EXITCODE=99
MAILDIR=$HOME/boxes/mydomain.com
INBOX=$MAILDIR/bob
GREY=$MAILDIR/bob^/.imap/grey
JUNK=$MAILDIR/bob^/.imap/Junk
TEST=$MAILDIR/bob^/.imap/Test
:0
* ^Subject:.*test
${TEST}
# Spam level < 2.0: it's probably real email, deliver as normal
:0
${INBOX}
以下是下午 4:05 发送的电子邮件的标题,但显示在桌面电子邮件客户端和 iOS 上是在晚上 9:05 收到的。
Return-Path: <from_email@domain.com>
Delivered-To: username-domain:com-bob@domain.com
X-Envelope-To: bob@domain.com
Received: (qmail 16283 invoked from network); 29 Jan 2015 00:05:59 -0000
Received: from mailwash46.pair.com (IP ADDRESS)
by tanha.pair.com with SMTP; 29 Jan 2015 00:05:59 -0000
Received: from localhost (localhost [127.0.0.1])
by mailwash46.pair.com (Postfix) with SMTP id 31958EBC17
for <bob@domain.com>; Wed, 28 Jan 2015 19:05:59 -0500 (EST)
Received: from tanha.pair.com (tanha.pair.com [IP ADDRESS])
by mailwash46.pair.com (Postfix) with ESMTP id 0E9EBEBFB5
for <bob@domain.com>; Wed, 28 Jan 2015 19:05:59 -0500 (EST)
Received: from [192.168.1.230] (c-IP ADDRESS.hsd1.wa.comcast.net [IP ADDRESS])
by tanha.pair.com (Postfix) with ESMTPSA id BE211F1D10
for <bob@domain.com>; Wed, 28 Jan 2015 19:05:58 -0500 (EST)
User-Agent: Microsoft-Entourage/12.20.0.xxxx
Date: Wed, 28 Jan 2015 16:05:57 -0800
Subject: 405pm test
From: "Robert" <from_email@domain.com>
To: "bob@domain.com" <bob@domain.com>
Message-ID: <D0EEB965.49C7D%from_email@domain.com>
Thread-Topic: 405pm test
Thread-Index: AdA7V1sU8z5udBOZSUyJx4az1tpIXA==
Mime-version: 1.0
Content-type: multipart/alternative;
boundary="B_3505305958_xxxxxx"
还有一封显示正确时间的电子邮件(基本相同):
Return-Path: <from_email@domain.com>
Delivered-To: username-domain:com-bob@domain.com
X-Envelope-To: bob@domain.com
Received: (qmail 22574 invoked from network); 30 Jan 2015 02:35:23 -0000
Received: from mailwash46.pair.com (IP ADDRESS)
by tanha.pair.com with SMTP; 30 Jan 2015 02:35:23 -0000
Received: from localhost (localhost [127.0.0.1])
by mailwash46.pair.com (Postfix) with SMTP id 4CF3BEBF9D
for <bob@domain.com>; Thu, 29 Jan 2015 21:35:23 -0500 (EST)
Received: from tanha.pair.com (tanha.pair.com [IP ADDRESS])
by mailwash46.pair.com (Postfix) with ESMTP id 4C278EBF97
for <bob@domain.com>; Thu, 29 Jan 2015 21:35:23 -0500 (EST)
Received: from [192.168.1.230] (c-IP ADDRESS.hsd1.wa.comcast.net [IP ADDRESS])
by tanha.pair.com (Postfix) with ESMTPSA id 55E98F1BF8
for <bob@domain.com>; Thu, 29 Jan 2015 21:35:21 -0500 (EST)
User-Agent: Microsoft-Entourage/12.20.0.xxxxxxxx
Date: Thu, 29 Jan 2015 18:35:16 -0800
Subject: test
From: "Robert." <from_email@domain.com>
To: "bob@domain.com" <bob@domain.com>
Message-ID: <D0F02DE4.49D82%from_email@domain.com>
Thread-Topic: test
Thread-Index: AdA8NWF58VbsQ1XhgkuMBHgxsaYksg==
Mime-version: 1.0
Content-type: multipart/alternative;
boundary="B_3505401322_xxxxxxxx"
【问题讨论】:
-
邮件客户端不应以任何方式解释
Received:标头。您能否举例说明它的外观以及您希望它的外观?我怀疑这只是 UTC 与本地的对比,完全没有错。 -
我的邮件客户端有一个发送和接收栏。发送列显示正确的时间。在 ios (Mail) 上,它仅显示 +5hr 时间。我应该注意到(据我所知)没有调用 EXITCODE=99,系统会发送原始电子邮件(我认为是通过 qmail),然后将同一电子邮件的 procmail 过滤版本发送到它被告知去的任何地方。这是显示时间差异的第二封过滤电子邮件。
-
听起来好像不是
Received:标头,但无论哪种方式,请在您的问题中包含示例消息的标头并指出哪一部分是错误的。 -
我不确定标题的哪一部分负责在接收列中显示时间(考虑到 PST)。旁注:奇怪的是,当没有调用 EXITCODE=99 时,系统生成了两封最上面的电子邮件(405pm 测试),一封显示正确的时间,另一封显示 5 小时快。这些电子邮件的两个标题完全相同。
-
...
tanha.pair.com的 IP 地址又不是保密的。
标签: procmail