我运行 postfix 我的服务器以允许网站发送电子邮件。我将它用作sendmail适当的替代品。
发送电子邮件时,HELO 字符串似乎包含localhost. 这不会是一个问题,只是我的一个客户刚刚说垃圾邮件拦截器向他们返回了一封电子邮件,说该电子邮件localhost不能包含在 HELO 字符串中。惊人的。
所以我编辑/etc/mailname为我的主要域名。我进行了编辑,/etc/postfix/main.cf以便:
smtpd_banner = ESMTP $mail_name
Run Code Online (Sandbox Code Playgroud)
然而,这是我在已发送电子邮件的标题中看到的(重新启动 postfix 后):
Delivered-To: oli@example.com
Received: by 22.194.173.22 with SMTP id bi10csp117521wjc;
Tue, 2 Apr 2013 07:24:18 -0700 (PDT)
X-Received: by 10.68.22.168 with SMTP id pt8mr24540246pbb.10.1364912657736;
Tue, 02 Apr 2013 07:24:17 -0700 (PDT)
Return-Path: <oli@example.com>
Received: from localhost (example.com. [22.22.22.22])
by mx.google.com with ESMTP id l6si2328296pao.283.2013.04.02.07.24.16;
Tue, 02 Apr 2013 07:24:17 -0700 (PDT)
Run Code Online (Sandbox Code Playgroud)
我已将我的域替换为 example.com。
localhost?!Oli*_*Oli 10
呜呜呜。
我刚刚注意到/etc/postfix/main.cf有一行写着:
myhostname = localhost
Run Code Online (Sandbox Code Playgroud)
我已将其更改为:
myhostname = example.com
Run Code Online (Sandbox Code Playgroud)
并重新启动。一切都是固定的。