ai didi

php - 为什么我不能向 Hotmail 发送电子邮件?

转载 作者:可可西里 更新时间:2023-11-01 00:10:48 24 4
gpt4 key购买 nike

这是我的代码:

$boundary = sha1('whatever');

$headers = 'MIME-Version: 1.0'."\r\n";
$headers .= 'From: "Domainname" emailname@domain.com'."\r\n";
$headers .= 'Reply-to: Domainname <emailname@domain.com>'."\r\n";
$headers .= 'X-Priority: 3'."\r\n";
$headers .= 'X-Mailer: Mail 1.0'."\r\n";
$headers .= 'Subject: '.$subject."\r\n";
$headers .= 'Content-Type: multipart/alternative; boundary="'.$boundary.'"'."\r\n\r\n";

$message = '--'.$boundary."\r\n";
$message .= 'Content-Type: text/plain; charset="utf-8"'."\r\n\r\n";
$message .= $text."\r\n";
$message .= '--'.$boundary."\r\n";
$message .= 'Content-Type: text/html; charset="utf-8"'."\r\n\r\n";
$message .= $html."\r\n";
$message .= '--'.$boundary.'--';

mail($email, $subject, $message, $headers);

它适用于 Gmail、Yahoo、GMX ...但不适用于 Hotmail/Live/MSN。

因为它适用于 Gmail,所以我可以假设它与我的服务器无关,对吧?

我也尝试过:

mail('username@hotmail.com', 'This is a subject', 'This is the body');

同样的问题。它甚至没有被发送到我的垃圾文件夹。

最佳答案

旧答案:

Hotmail 会阻止没有 SPF 记录的域。你可以做一个here

编辑:

截至 2015 年 6 月,通用要求是:

1) DKIM 在 Exim 中启用 DKIM 现在是一个非常重要的工具,可以减少您的电子邮件被标记为垃圾邮件的机会。强烈建议为您的域启用 DKIM。

2) SPF 记录用 -all 而不是 ~all

3) DMARC 记录帮助远程服务器决定如何处理失败的 DKIM/SPF 消息。

4) 通常的事情,a) 如发送 IP 时的反向 IP 查找,b) 最好指向同一 IP 的 rDNS 值正向查找,c) 主机名上的 MX 记录。

例子:

"v=spf1 a mx ip4:1.2.3.4 -all"

其中1.2.3.4是你服务器的ip。

关于php - 为什么我不能向 Hotmail 发送电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7033694/

24 4 0
文章推荐: php - Prestashop 将 css 添加到模块
文章推荐: javascript - 警告 : Recursive process. 检测到 nextTick
文章推荐: node.js - 你如何修改 generator-angular-fullstack 图标?
文章推荐: PHP 提交表单,转义引号?
可可西里
个人简介

我是一名优秀的程序员,十分优秀!

滴滴打车优惠券免费领取
滴滴打车优惠券
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com