- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
设置 SPF 记录后,我仍然在这里验证为什么我无法收到此电子邮件到 hotmail 帐户。我可以毫无问题地将它发送到 gmail。请确认密码是否正确,SPF记录是否正确:
<?php
require_once 'PHPmailer/class.phpmailer.php';
$mail = new PHPMailer();
$body = "Thankyou for your Purchase. <br/><br/> Here is your Policy! You are now Protected during your Travels.";
$mail->AddAddress('$payer_email');
$mail->From = "noreply@example.com";
$mail->FromName = "Name";
$mail->Subject = "Thankyou for Your Purchase";
$mail->MsgHTML($body);
$mail->AddAttachment("tosend/xxx.pdf");
if(!$mail->Send()) {
echo "There was an error sending the message";
$sql = "UPDATE purchases SET policy_sent = 'Not Sent' WHERE id = '$lastid' ";
$stmt = $mysqli->query($sql);
$mysqli->close();
exit;
}
echo "Message was sent successfully";
$sql = "UPDATE purchases SET policy_sent = 'Sent', email_to = '$payer_email' WHERE id = '$lastid'";
$stmt = $mysqli->query($sql);
$mysqli->close();
?>
这是 SPF:
v=spf1 a mx include:secureserver.net ~all
所有这些都配置正确了吗?
最佳答案
使用 SMTP Auth,Hotmail 就不会提示了。几乎所有接收服务器都将匿名邮件视为垃圾邮件。
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->Host = "mail.yourdomain.com"; // sets the SMTP server
$mail->Port = 26; // set the SMTP port
$mail->Username = "yourname@yourdomain"; // SMTP account username
$mail->Password = "yourpassword"; // SMTP account password
但是当然。根据您是否可以控制您的 SMTP,您应该确保正确设置了诸如 reverse-dns-lookup 之类的基本内容
由于评论中的讨论,我想添加更多关于我的想法的信息,了解为什么 SMTP Auth 会解决这个问题:
如果您在没有定义 SMTP-Server 的情况下使用 PHPMailer,PHPMailer 将以 mail
模式运行,这将仅调用 php 的 mail()
函数。
邮件功能本身将使用 PHP-INI 文件中配置的 smtp 设置,或此处列出的默认值:http://php.net/manual/en/mail.configuration.php
默认值:
SMTP = "localhost"
smtp_port = "25"
由于 OP 已经配置了本地邮件服务器(或者他为什么要设置 MX 记录?),php 现在将无需身份验证即可连接到此 SMTP 服务器。服务器将接受消息并将其发送到下一个服务器。
(如果使用 unix 的 sendmail,同样适用)
链中的每个服务器,尤其是接收服务器现在可以看到,私有(private) SMTP 已被使用并且没有身份验证假如。这已经是 Spam-Score 超过 9000,因为有了这样的设置(理论上)每个人 都可以使用该服务器发送邮件!only from localhost 之类的限制是 ofc。其他服务器不知道,因此 SMTP 被认为是开放邮件中继 http://en.wikipedia.org/wiki/Open_mail_relay
将 PHPMailer 切换到 SMTP-Auth(即使仍然使用本地 SMTP 服务器)将在转发邮件时将此信息添加到服务器创建的条目中。条目将如下所示:
Received: from SERVER1 ([xxx.xxx.xxx.xx]) by mydomain.de with ESMTPA
ESMTPA
之后的尾随 A
现在告诉接收服务器,Server1
在 mydomain.de 上使用了有效的用户帐户
开始发送尝试,这意味着 SMTP 服务器知道邮件的来源并且可以提供有关发件人的信息。
仍然,本地 SMTP 服务器不是已知服务器,因此在这种情况下,它最终可能会被列入灰名单并检查各种 RBL,这在这种情况下应该不是任何问题。
如果(本地)SMTP 服务器现在通过了所有检查(反向 DNS 查找、灰名单、RBL 等等)- 即使没有使用远程 smtp,邮件也很有可能成功传递,因为可以成功验证服务器以及使用该服务器的发件人。 (否则没有公司可以架设自己的服务器)
因此,即使没有使用远程 SMTP 服务器,使用 SMTP-Auth(或任何其他身份验证方法)也会产生影响。
经过身份验证的邮件并不能保证不被视为垃圾邮件 - 但未经身份验证的邮件在常见系统的垃圾邮件分数中肯定排名较高。
关于phpMailer 没有到达 Hotmail?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30237635/
我正在尝试制作一个程序,显示飞机到达和起飞的时间表,然后要求用户在 C 中输入时间。然后程序将找到最接近输入时间的到达时间用户。问题是它没有按预期工作,并且给我一个错误的到达时间,甚至不接近输入的时间
我有一个不断填充新信息行的 Excel 表,其中一列与联系客户的日期(有时为空 - 无需输入日期)相关,如果在 10 内没有收到回复从那以后的几天,我们必须发送提醒,如果过了 17 天,我们必须取消订
实际到达很简单,标签进入接收器天线范围,但是偏离是造成问题的原因。 首先,我们了解一些有关设置的信息。 标签: 它们以433Mhz的速度工作,每1.5秒钟发送一次“心跳”,移动时进入传输突发模式,这种
我构建了这段代码来从 URL 获取 XML我使用了 AsyncTask,当到达 getInputStream() 点时,半身应用程序仍然崩溃 重点是我想从 url 获取 XML 作为字符串。 我尝试不
所以我有一个 TDBGrid,我的目的是搜索 DBGrid 的 Fieldname 并将其与我的编辑的 Text 属性进行比较,如果它们相等,则 我想将找到匹配项的整列写入列表框。 通过带有 fiel
我会写得非常简单,因为实际的修复并不比我不理解的实际设计重要。似乎一旦我的 @RequestBody 命中 @Controller,有关 subtype 的信息就会丢失。 假设我们有: class A
所以我正在做这个简单的动态编程问题,关于达到 n一次只能走 1 或 2 步。我知道答案基本上是一个斐波那契序列,答案是:达到n-2的步骤数+ 到达 n-1 的步数. T(n) = T(n-1) +
(function start (){ $('.bar').each(function(i){ var $bar = $(this); $(this).append('')
我有一个程序,我在启动它之前要求用户输入。 public static void main(String args[]) { String database = JOptionPane.sho
就是这样,我必须在提交按钮上有一张图片,但它根本没有出现。 我希望它看起来像这样: 现在看到我的是这样的,我不明白为什么它没有出现在页面上。 HTML CSS #sognu { bac
click here 点击后重定向至 xyz.com/#contact, 现在我想获得div #abc的顶部位置 //set the value as a variable, and remove t
here is a fiddle to know where I am starting from 我要解决的问题涉及对单个 html 文件的内容进行“分页”,以一种将它们一次锁定在一个部分中的方式。
是否可以在传递页面部分时运行 javascript 函数?我想要实现的是类似于 Twitter Bootstrap 的 scrollspy。 最佳答案 您可以使用 waypoints 插件: http
我有一个可以动态调整其大小的 iframe。我通过父页面上的发布消息和监听器解决了这个问题,因此每次 iframe 的内容发生变化时,iframe 的大小也会发生变化,并且永远不会有滚动条。 在 if
我试图让我的导航栏在到达我在网站下方设置的 anchor 时变得透明。 这是我的HTML Home About Logo W
我写了一个简单的程序来管理姓名列表(下面是程序的一部分)。我希望函数“choice()”结束并返回到 main()——从而结束程序——当用户对变量“option”的输入为 4 时。然而,choice(
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
代码片段在 while 循环后有一个 EOF,之后必须再次重新打开文件 - fopen 被重用。我的问题是是否有办法避免这种笨拙的 fopen 双重使用或以某种方式不使用 EOF? if (!(f=f
从这个页面: http://www.beta.inegi.org.mx/app/buscador/default.html?q=e15a61a 我正在尝试检索此网址: http://www.beta.
我使用维基百科的 API 来获取有关页面的信息。API 给我这样的 JSON: "query":{ "pages":{ "188791":{ "pageid":18879
我是一名优秀的程序员,十分优秀!