我正面临一个奇怪的问题。当我使用PHP的mail()函数发送邮件时,邮件被完美地发送到gmail和yahoo(尽管它在yahoo中被标记为垃圾邮件),但是邮件没有被我公司的电子邮件地址接收。
我没有直接访问服务器,只有ftp到public_html文件夹,因此我不能检查日志.....
有什么想法或建议吗?
编辑:$mailfrom="website@mysite.com";
$mailto=$buyerrow['email'];
$subject="Test Details";
$body='Hi '.$buyerrow['name'].'!<br>Test Details below:<br><br><br><br><br>Thanks<br>Web Team';
$headers = "MIME-Version: 1.0'r'n";
$headers.= "Content-type: text/html; carset=iso-8859-1;'r'n";
$headers.= "From: ADMIN <".$mailfrom.">'r'n";
@mail($mailto,$subject,$body,$headers,"-f website@mysite.com");
至于我公司服务器上的垃圾邮件文件夹,我很确定它也不会在那里结束....
是否有可能有一些服务器设置允许php发送邮件到特定的服务器?
许多公司的邮件服务器设置为在SMTP会话期间立即直接拒绝某些类型的垃圾邮件。如果发生这种情况,它将永远不会进入你公司的垃圾邮件文件夹。你应该和你公司的系统管理员确认一下。
如果您有疑问,您可以使用Wireshark等应用程序来捕获和分析实际的SMTP流量
您检查过垃圾邮件文件夹了吗?还要检查你是否正确地设置了header与from name等,
问题似乎出在你们公司的服务器邮件服务器上。
确保测试它[从雅虎发送电子邮件到你公司的电子邮件地址]并仔细检查mx记录。