【发布时间】:2012-01-26 08:27:58
【问题描述】:
我已经通过在“/etc/php5/apache2/php.ini”中设置"sendmail_path = "/usr/sbin/sendmail"来配置我的服务器发送邮件,并且服务器上安装了sendmail。
当我从 php5 通过 cli 运行此脚本或它的任何变体时,邮件发送得很好,但是当我有浏览器运行它时,即 Chrome 或 Firefox,它每次都失败。
<?php
$to = "notreal@email.com";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
if (mail($to, $subject, $body)) {
echo("<p>Message successfully sent!</p>");
} else {
echo("<p>Message delivery failed...</p>");
}
?>
我正在使用“php5-cli”包作为命令行解释器。
其他依赖 PHP“mail()”函数的基于 PHP 的网络应用程序也不发送邮件。
【问题讨论】:
-
如果您可以访问 php.ini 文件,请检查 smtp 的设置。
-
mail() 不符合当今的电子邮件标准。请改用 PHPmailer 之类的邮件程序类。