我不是网络技术的新手,但我不太了解的一件事是电子邮件和标题。电子邮件具体是如何工作的?
当我痛苦地尝试不发出我的实际电子邮件时,我的 hotmail 收件箱中收到垃圾邮件。我使用自己的域名使用多个别名将电子邮件转发到我的收件箱。然而,现在我收到的垃圾邮件在 to: 行中没有地址,或者还有“未公开的收件人”。查看标题没有任何帮助。
所以从技术的角度来看,我不得不想知道......如果我向我个人域中的某个地址发送一封电子邮件并且它被转发到我的 hotmail 帐户,如果该地址是没有列在标题中?
EEA*_*EAA 13
这是一个相当常见的混淆来源。在标准电子邮件传输中有两个地方指定了 to: 地址 - 一次在“信封”中,一次在可见的电子邮件标题中。
信封收件人地址是在 SMTP 事务期间指定的,您永远不会看到在那里设置的值。它仅由 SMTP 服务器用于路由消息。
电子邮件本身中的 to: 标题是可选的,这就是您在 hotmail 帐户中看到的内容。
以下是标准 SMTP 事务的流程:
erik@host:~$ telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 localhost ESMTP Postfix (Ubuntu)
helo example.com
250 localhost
mail from: erik@example.com
250 2.1.0 Ok
rcpt to: jimbob@example.com
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
To: foobar@example.com
Subject: This is the subject
This is the message body.
.
250 2.0.0 Ok: queued as 19CE221FDA
Run Code Online (Sandbox Code Playgroud)
后面指定的地址rcpt to:是信封收件人地址。to:后面一行中指定的地址data是显示在您的电子邮件客户端中的地址。这两个值不必匹配,并且如前所述,to:数据部分中的 是可选的。
添加到 ErikA 的回答中:想想您通过邮寄发送的常规信件。您将信写在某种带有信头的文具上,其中包含发件人和收件人地址、主题行和其他信息。此处显示了一个经典示例:http : //en.wikipedia.org/wiki/File : Einstein_Szilard_p1.jpg。这对应于您的邮件客户端显示的电子邮件标题。
然后你把那封写好的信放进信封里。信中的信息是任何人都看不到的,因为信被塞进了信封里。您必须在信封上写下发件人和收件人地址,邮局才能递送信件。这对应于 SMTP 信封头。
如果信封上的信息不正确,邮局就不能也不会投递信件。SMTP 的行为相同。
但是,如果实际的信件本身不包含正确的信笺抬头,则不会产生真正的后果。当然,收件人不会高兴,您的信件将被视为形式不佳,但这不会影响邮政递送信件的能力。帖子只看信封,而不是实际的信件本身。通过 SMTP 发送电子邮件的工作方式相同。它甚至使用类似的术语。
因此,您可以在收件箱中找到没有正确电子邮件标题的电子邮件,例如To:、From:或Subject:。重要的是 SMTP 信封标头。没有其他的。