php邮件函数

标签 php smtp

我正在使用 PHP 发送带有如下 header 的电子邮件:

From: danny@mydomain.com
To: dannyfriend@gmail.com

当我在 dannyfriend@gmail.com(收件人)的电子邮件客户端中查看 header 时,我看到了这个 header :

Received: from admin by gator1815.hostgator.com with local (Exim 4.69)
    (envelope-from <danny@mydomain.com>)

但有时邮件会进入 dannyfriend 的垃圾邮件文件夹,因为电子邮件是通过 hostgator.com 发送的,而不是发件人电子邮件地址中的 mydomain.com。

这里到底发生了什么?为什么不是这样:

 Received: from admin by somename.mydomain.com with local (Exim 4.69)
        (envelope-from <danny@mydomain.com>)

我看过an article描述这个问题。有人可以阐明 SMTP 服务器发生了什么吗?

总结: 为什么 SMTP 服务器不使用来自 FROM: header 的消息作为信封发件人?

最佳答案

您实际上使用的是匿名 smtp 中继。在这种情况下,您的 ISP 提供商可能是 hostgator 代表您正在使用的电子邮件地址发送电子邮件。您可能需要将您的服务器限定为可以接收和发送电子邮件的有效 SMTP 服务器。如果 header 与实际发件人域不匹配,则邮件客户端或接收端会怀疑它来自欺诈地址并将其标记为垃圾邮件。

关于php邮件函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9160827/

相关文章:

在 Centos 上未使用 Shell cmd/脚本发送电子邮件

Java 邮件异常。无法连接到 SMTP 主机 : localhost, 端口:25;

php - Laravel 查询比较数据库中的两个字符串,日期格式为 Y-m

php - 从 PHP MySQL 连接获取 JSON

email - 通过 SMTP 将额外信息注入(inject)电子邮件

c# - 从 .net 程序发送电子邮件时遇到问题

php - (size_t)(uint32_t)-(int32_t)(nTableMask) 是什么意思

php - 如何包含已删除条目的数量

php - 如果执行的命令写入剪贴板,则 passthru 挂起

c# - Azure队列存储不发送队列消息