我有一个由GoDaddy托管在虚拟专用平台上的网站,但我无法在我的PHP脚本中让mail()函数正常工作。当人们第一次注册我的网站时,我正在尝试发送带有验证码的电子邮件给他们,mail()功能对Gmail地址很有效,但不适用于美国在线或甚至GoDaddy的电子邮件服务!
我试着与多个GoDaddy支持代表交谈,但他们在这个问题上没有真正的帮助。我在网上看了看,这似乎是在GoDaddy上托管网站的人的一个非常常见的问题。当我的电子邮件失败时,我不会收到退回的电子邮件,所以很难知道发生了什么。
下面是我的PHP代码:
$sendtoemail = 'newsignup@aol.com';
$emailsubject = "Please validate your email";
$emailbody = "Validation info, blah blah.";
$emailheader = 'From: admin@example.com' . "\r\n" .
'X-Mailer: PHP' . "\r\n" .
'Reply-To: admin@example.com' . "\r\n" .
'-fadmin@example.com';
mail($sendtoemail, $emailsubject, $emailbody, $emailheader);当我检查以deferral: ./Maildir:_No_such_file_or_directory/结尾的/usr/local/psa/var/log/maillog (通过PuTTY SSH访问)时,我得到了一些错误
我还在我的主机账户上激活了反向域名系统,创建了一个通过"GoDaddy only“发送电子邮件的SPF域名系统记录,并选中了"Include PTR”框进行域名系统查找。这是在谷歌爸爸的DNS管理器的“区域文件编辑器”的"TXT (文本)“部分下。(希望这对您来说比对我更有意义)。
发布于 2012-04-11 03:55:57
我不确定如果GoDaddy支持PHP邮件,这通常是一个大问题的网站托管公司,因为它在脚本中使用发送垃圾邮件。
最好的办法是检查GoDaddy主机上有什么PEAR扩展,如果他们有PEAR邮件,你可以使用它。如果没有,那么您应该尝试使用身份验证的邮件发送。
如果你需要,我可以给你一个PEAR和认证邮件的例子。
发布于 2014-03-13 02:22:00
这是一个老帖子,但我认为我应该添加我的经验,以防他们帮助其他人。
我在mail()上遇到了非常类似的问题,我打电话给GoDaddy的技术服务部门。我打了两个小时的电话,大约30次对mail()的测试调用(他们甚至上传了自己的'testmail‘脚本),我没有收到一封成功的电子邮件(尽管mail()返回值为1,即成功)。最后的结果是,他告诉我,电子邮件服务器中继“排队”。两个小时后,一个技术支持人员和他的"sys管理员“在...still上遇到了同样的问题。
解决方案是使用php库邮件,而不是普通的老式swiftmailer ()函数。使用swiftmailer立即发送电子邮件。希望这对其他人有帮助!
不用说,我已经更换了主机提供商!
发布于 2012-04-11 05:04:52
你需要为GoDadday使用PHP mail()的默认变量,我不知道,但当我使用你的代码片段时,它对我也不起作用,但通过使用标准变量,我得到了邮件;是的,不要使用专用电子邮件地址的变量,像我一样放入mail()函数,

试试看,希望也会为你工作;
$subject = "Please validate your email";
$message = "Validation info, blah blah. 2nd msg";
$Header = 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$Header .= 'From: Lux <info@luxstyles.com >' . "\r\n";
if(mail('info@luxstyles.com', $subject, $message, $Header))
echo "email sent";
else
echo "email sending fail";https://stackoverflow.com/questions/10095456
复制相似问题