PHP邮件最终成为gmail垃圾

问题描述:

一直在网上搜索,并尝试了许多不同的解决方案,也使用phpmailer和其他库。PHP邮件最终成为gmail垃圾

我的目标是从我的网站发送一封确认邮件,它可以与Hotmail和其他服务一起使用,但使用Gmail最终会成为垃圾邮件。

使用mail()函数,页面托管在one.com上,发送邮件确实存在。

代码:

$mime_boundary = 'Multipart_Boundary_x'.md5(time()).'x'; 

$headers = ""; 

$headers .= 'MIME-Version: 1.0'."\r\n"; 
$headers .= "Content-Type: multipart/alternative; boundary=\"{$mime_boundary}\"\r\n"; 
$headers .= "Content-Transfer-Encoding: 7bit\r\n"; 

$body = "This is a multi-part message in mime format.\n\n"; 

# Add in plain text version 
$body .= "--{$mime_boundary}\n"; 
$body .= "Content-Type: text/plain; charset=\"charset=us-ascii\"\n"; 
$body .= "Content-Transfer-Encoding: 7bit\n\n"; 
$body .= "To view the message, please use an HTML compatible email viewer!"; 
$body .= "\n\n"; 

# Add in HTML version 
$body .= "--{$mime_boundary}\n"; 
$body .= "Content-Type: text/html; charset=\"UTF-8\"\n"; 
$body .= "Content-Transfer-Encoding: 7bit\n\n"; 
$body .= $this->_message; 
$body .= "\n\n"; 

$body .= "--{$mime_boundary}--\n"; # 

$headers .= 'From: Sender <[email protected]>'."\r\n"; 
$headers .= 'Reply-To: Sender <[email protected]>'."\r\n"; 
$headers .= 'Return-Path: Sender <[email protected]>'."\r\n"; 

$headers .= 'Message-Id: <' . md5(uniqid(microtime())) . '@example.com>'."\r\n"; 
$headers .= "X-Sender-IP: ". $_SERVER['SERVER_ADDR'] ."\r\n"; 
$headers .= 'X-Mailer: PHP/'. phpversion() ."\r\n"; 

mail($this->_to, '=?UTF-8?B?'. base64_encode("Subject - ". $this->_subject) .'?=', $body, $headers, "-f [email protected]"); 
+0

你有SPF记录吗?它与您的服务器相匹配吗?你尝试过DKIM吗? – SLaks 2012-01-12 13:44:19

+0

@Slaks是否也会查找DKIM记录?但我知道SPF。 – greut 2012-01-12 13:45:41

+0

@greut:我不知道,但它可能有帮助。 – SLaks 2012-01-12 13:46:48

那么简单,检查是否域one.com被列入黑名单:

http://www.mxtoolbox.com/SuperTool.aspx?action=blacklist%3a195.47.247.192

+0

已勾选,并未列出 – trembon 2012-01-12 14:03:10

+0

如果您的域名未列入黑名单,但仍然进入垃圾邮件文件夹,原因如下:1,类似的消息已被多次发送。 2,主题看起来像垃圾邮件(例如,买东西)3,可疑的MIME头文件等 – rkosegi 2012-01-12 14:04:15

+0

可以发邮件正文并受其影响,虽然它在瑞典语:) – trembon 2012-01-12 14:10:18

检查你的IP(或服务器的IP)未列入黑名单: http://www.dnsbl.info/dnsbl-database-check.php

+0

已检查,并未列出 – trembon 2012-01-12 14:02:01

我记得在最后一个参数中需要没有空格。

"[email protected]" 

,而不是

"-f [email protected]" 
+0

已更改,并且无效: ( – trembon 2012-01-12 13:53:18

great post从@JeffAtwood给出的信息有关的注意事项发送电子邮件又该以减少的可能性做一个时会遇到一个巨大的数额结束于垃圾/垃圾邮件文件夹。

+0

试过什么能够,从邮件结果是: SPF检查:中性 发件人ID检查:中性 DomainKeys的检查:中性 DKIM检查:中性 – trembon 2012-01-12 14:08:55

+0

如果更改发件人的电子邮件地址,邮件主题和其内容(使它看起来像个人电子邮件),它仍然在垃圾邮件文件夹? – nulltoken 2012-01-12 14:13:34

+0

发件人:[email protected]主题:Pengaboken.se - Välkommen正文:带有激活帐户链接的欢迎文本=邮件最终在垃圾邮件发送到Gmail帐户,Hotmail和其他很好 – trembon 2012-01-12 14:16:12