php mail()无法在服务器上运行

时间:2012-12-27 15:32:01

标签: php email phplist

我的服务器上的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

我不知道那是什么样的错误?任何线索如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

尝试不使用“$ header”。最有可能的是服务器上的标头可接受性问题。 此外,某些服务器使用 \ @ 获取电子邮件地址。喜欢 myownemail \ @yahoo.com