“localhost.localdomain” 的电子邮件发送问题

“localhost.localdomain” 的电子邮件发送问题

mail()我有一台运行 Ubuntu 14.04 的 DigitalOcean 服务器。我在从 PHP函数(内部使用)发送电子邮件时遇到问题sendmail

我认为问题可能与我的文件配置有关。以下是我目前hosts所拥有的内容:/etc/hosts

127.0.0.1 localhost localhost.localdomain ip-xxx-xxx-xxx-xxx

并且etc/hostname

ip-xxx-xxx-xxx-xxx

(上面两行中,我将 IP 地址数字替换为x

现在我有一个指向该服务器的域,我们称之为mydomain.com

因此,当我的网站mydomain.com发送电子邮件时,该电子邮件将被放入垃圾邮件文件夹。我进行了一次测试https://www.mail-tester.com它标记出的一个问题是:

在此处输入图片描述

我尝试mydomain.com在文件中添加上面的行hosts,但这导致电子邮件很长时间后才到达或根本没有到达。

以下是已接收的标头:

Received: from localhost.localdomain (unknown [xxx.xxx.xxx.xxx])
    (using TLSv1.2 with cipher xxx (256/256 bits))
    (No client certificate requested)
    by mail-tester.com (Postfix) with ESMTPS id xxx
    for <[email protected]>; Mon, 29 Apr 2019 18:35:18 +0200 (CEST)

Received: from localhost.localdomain (localhost [127.0.0.1])
    by localhost.localdomain (8.15.2/8.15.2/Debian-3) with ESMTP id xxx
    for <[email protected]>; Mon, 29 Apr 2019 17:35:18 +0100

Received: from mydomain.com (www-data@localhost)
    by localhost.localdomain (8.15.2/8.15.2/Submit) with SMTP id xxx
    for <[email protected]>; Mon, 29 Apr 2019 17:35:18 +0100

有人可以告知问题可能是什么以及如何解决吗?

答案1

没人关心您的基础设施内部的跳数以及经过了多少个本地主机。但一定要让您的外发服务器说“您好,我是 mail.domain.tld”,而不是“您好,我是 localhost.localdomain”,因为没有配置正确的服务器会有兴趣与未知的邮件服务器通信。

我在引用的标头中看到您用于postfix(1)处理出站电子邮件。查找myhostname您内部的变量main.cf(通常位于/etc/postfix或中/usr/local/etc/postfix)并正确填充。示例:(myhostname=mail.domain.tld将其替换为您的邮件服务器名称)。还要确保smtp_banner=至少$myhostname包含smtp_banner=$myhostname ESMTP Postfix

了解更多信息。

相关内容