我的设置:我正在带有Apache Web服务器的Amazon Linux服务器(似乎基本上是CentOS)上运行Magento网站。我还使用Google Apps管理mydomain.com的邮件。
我能够成功地为服务器设置MX,SPF和DKIM记录并使它们正常工作,这样,当我发送电子邮件时,我会同时获得SPF和DKIM的“通行证”。但是,我遇到了一个奇怪的问题,我似乎无法解决---我发送的电子邮件的标头的一部分似乎总是说:
Received: (from apache@localhost) by mydomain.com
我已经在上下搜索了将其更改为使用“ mail@mydomain.com”的方法,但是我似乎无法弄清楚。
在我尝试过的事情中:
- 将php.ini更改为:/ usr / sbin / sendmail -t -i -f mail@mydomain.com
- 将以下行添加到mydomain.conf的虚拟主机中:ServerAdmin mail@mydomain.com
- 在Magento后端中将返回路径设置为“是”(系统->配置->高级->系统->邮件发送设置。
如果有帮助,我的/ etc / hosts文件的内容如下:
127.0.0.1 www.mydomain.com
127.0.0.1 mydomain.com
127.0.0.1 localhost localhost.localdomain
对于hosts文件的最后一行,我还尝试了变体...
127.0.0.1 localhost.localdomain mydomain.com
...但是还是没用。
我认为如果添加电子邮件标头也可能会有所帮助,以防万一可以为可能发生的事情提供一些线索(我更改了很多值以使其泛化)。
Delivered-To: zerowing@email.com
Received: by 123.123.123.123 with SMTP id abcdefg123456790;
Fri, 3 Apr 2015 08:35:04 -0700 (PDT)
X-Received: by 456.456.456.456 with SMTP id asdfqwerhjkl234hjkl.789.78909876789;
Fri, 03 Apr 2015 08:35:03 -0700 (PDT)
Return-Path: <mail@mydomain.com>
Received: from mydomain.com (ec2-11-11-111-11.amazonaws.com. [66.66.777.77])
by mx.google.com with ESMTPS id asdkfjhkjdfha839383.105.2015.04.03.08.35.02
for <zerowing@email.com>
(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
Fri, 03 Apr 2015 08:35:03 -0700 (PDT)
Received-SPF: pass (google.com: domain of mail@mydomain.com designates 66.66.777.77 as permitted sender) client-ip=66.66.777.77;
Authentication-Results: mx.google.com;
spf=pass (google.com: domain of mail@mydomain.com designates 66.66.777.77 as permitted sender) smtp.mail=mail@mydomain.com;
dkim=pass header.i=@mydomain.com
Received: from mydomain.com (www.mydomain.com [127.0.0.1])
by mydomain.com (8.14.4/8.14.4) with ESMTP id t33FZ29p004251
for <zerowing@email.com>; Fri, 3 Apr 2015 15:35:02 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=mydomain.com;
s=default; t=fjIFDJF9049;
bh=fjO4J4f09j409JF04J909f4j904JF940F9/Y=;
h=To:Subject:From:Date;
b=F4J90FJ490j09j490FJ094J0j94f90j409j490Jf90j904JF09j490fj904jf094J
f09J40F9J904fj049J099j49J049J0FJijffjdlfjldkDLFJKLdjflEJFOIJFOEIEO
JF9JF049j409j0F094J09FJ049jf049j=
Received: (from apache@localhost) <----------- THIS IS WHAT I'M TRYING TO CHANGE
by mydomain.com (8.14.4/8.14.4/Submit) id fkdjfljlfsra39393;
Fri, 3 Apr 2015 15:35:01 GMT
Message-Id: <201504031535.fkdjfljlfsra39393@mydomain.com>
To: =?utf-8?B?Sm9lIEdhcmNpYQ==?= <zerowing@email.com>
Subject: =?utf-8?B?VGVzdCBOZXdzbGV0dGVyLCBwbGVhc2UgaWdub3Jl?=
X-PHP-Originating-Script: 48:Sendmail.php
From: "mydomain.com" <mail@mydomain.com>
Date: Fri, 03 Apr 2015 15:35:01 +0000
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline
MIME-Version: 1.0
我的一部分不确定这是否正常,我想我不确定是什么原因导致apache @ localhost出现,但是如果有人有想法,将不胜感激,谢谢!
编辑 我正在使用的MTA是Sendmail。这是我对sendmail.mc文件进行的配置更改,以适应我的站点。
MASQUERADE_AS(`mydomain.com')dnl
FEATURE(masquerade_envelope)dnl
FEATURE(masquerade_entire_domain)dnl
INPUT_MAIL_FILTER(`opendkim', `S=inet:8891@127.0.0.1')
define(`confCW_FILE', `/etc/mail/local-host-names')dnl
dnl define(`confDOMAIN_NAME', `mydomain.com')dnl
编辑我不确定这个问题是否再次被标记为重复,因此我认为我应该强调为什么它不基于所提到的问题而不是为什么。切换到Postfix并不是一种解决方案,而是一种解决方法。我不愿意根除迄今为止使用Sendmail完成的所有设置,而只是遇到尝试使Postfix正常工作的其他潜在问题。如果您阅读了上面提到的要点,我也已经提到在php.ini中编辑sendmail命令。
编辑我认为我不妨提及我尝试做的其他一些不起作用的事情。我在sendmail.mc中添加了以下几行:
FEATURE(`genericstable',`hash -o /etc/mail/genericstable.db')dnl
GENERICS_DOMAIN_FILE(`/etc/mail/generics-domains')dnl
然后,我创建了一个通用域名文件,其中包含单行“ mydomain.com”。然后,我创建了一个通用表文件,其中包含单行“ apache mail@homebrewsupply.com”。我在邮件目录中运行了make,重新创建了cf文件,然后重新启动了sendmail,但是没有骰子。
我尝试编辑/ etc / aliases文件。我尝试将“ apache:root”这一行改为“ apache:root,mail @ mydomain.com”,也只是“ apache:mail@mydomain.com”,但这也没有做任何事情。
我还尝试将单行“ apache @ localhost mail@mydomain.com”添加到/ etc / mail / virtuserstable文件中。那也没做任何事。
让它正常工作真令人沮丧。我已经非常接近需要它的地方,但是老实说,我不知道要替换“ apache @ localhost”这一行的地方。