每当我使用php发送邮件时,接收者都会收到这样的信息“来自:网站plc info@website.com经mirage.arandomserver.com ”
如何完全摆脱服务器名称?
这是我当前的脚本“
$to="$Email";
$subject="Message received";
$headers= 'From: Website plc <info@website.com>' . "\r\n" .
'Reply-To: $Email' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
$contact_message="
Dear $FirstName $Surname,
message
Thanks
P&C Group Careers
http://www.career.pandcgroupng.com
";
mail("$to", "$subject", $contact_message, $headers);
答案 0 :(得分:3)
使用“地址信封”附加参数。
mail($to, $subject, $contact_message, $headers, '-f info@website.com');
此地址将由邮件系统在内部用于路由目的。请注意,这也绕过了邮件过滤软件从与实际原始服务器不匹配的地址检测到“错误”的一些问题。
编辑 - 我在Windows上完全没有这方面的经验。
答案 1 :(得分:1)
你做不到。您的服务器参与SMTP通信,并始终在原始邮件消息中显示为类似于此的标头:
Received: from example.com (example.com. [100.100.100.100])
by mx.google.com with ESMTP id t8si14713688dfb.115.2013.03.18.10.01.59;
Mon, 18 Mar 2013 10:01:59 -0700 (PDT)
由于这个邮件客户端,如GMail将显示您正在看到的“通过”部分。
答案 2 :(得分:1)
当Gmail无法验证“website.com”是否实际发送电子邮件时,会出现“via mirage.arandomserver.com”。 Gmail会检查许多因素,包括反向DNS,SPF记录和/或来自发送SMTP服务器的HELO,以验证服务器是否允许作为该域发送。与您的实际PHP脚本无关。
请查看Google的文档:http://support.google.com/mail/answer/1311182
检查“website.com”域中的SPF记录,并确保它们对于您发送的电子邮件服务器是正确的。您可能希望与托管公司或系统管理员联系,以获取托管设置所需的正确SPF记录。