我的服务器上的php mail()函数有点问题。它根本不会起作用。我使用像这样的简单脚本
<?php
$to = 'myownemail@yahoo.com';
$subject = 'test title';
$message = 'hello';
$headers = 'From: admin@thisdomainlistedontheserver.com' . "\r\n" .
'Reply-To: admin@thisdomainlistedontheserver.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
if( mail($to, $subject, $message, $headers) ){
echo "SUCCESS";
}
else{
echo "FAIL";
}
?>
我已在此服务器上安装了PHPList,并且所有功能似乎都没问题。我可以从我的PHPList安装中顺利发送测试邮件。所以我认为它可能与sendmail配置无关,相反,我的代码可能有问题。
但后来我在其他服务器上测试了我的简单脚本。原来它工作得很好。我在这个阶段感到困惑。那么这部分有什么不妥之处呢?是我的代码还是邮件服务器配置?
哪里是开始跟踪问题的好地方?
更新
我终于获得了访问邮件日志的特权...在/var/log/mail.log上,我有足够的这条线
panther5 postfix/postdrop[4961]: warning: unable to look up public/pickup: No such file or directory
我不知道那是什么样的错误?任何线索如何解决这个问题?
答案 0 :(得分:0)
尝试不使用“$ header”。最有可能的是服务器上的标头可接受性问题。 此外,某些服务器使用 \ @ 获取电子邮件地址。喜欢 myownemail \ @yahoo.com 。