从html调用时,php脚本上的邮件命令无法正常工作

时间:2014-05-26 21:25:22

标签: php linux email command

我开始在Centos 6.1 apache服务器上处理一个小测试表单。它设置为当前默认配置。基本网页是一个在Post上调用php脚本的HTML。从命令行运行脚本时,响应成功,并立即发送电子邮件。另一方面,如果我使用html网页,它会调用PHP,传递变量,但最后是" mail"命令未执行。

我已经包含了一个echo来查看变量内容是否被放入消息变量中。我认为这可能与SELinux政策有关?我已阅读此论坛上关于它的另一篇文章,但在该示例中,它是为sendmail设置的。我没有在centos服务器上安装或运行sendmail,但默认情况下运行postfix。 This是我读过的论坛帖子

运行#sestatus -b |时grep sendmail

它也被设置为 httpd_can_sendmail off ,就像在该线程中一样。

如果我运行#sestatus -b | grep postfix

我得到的唯一条目是 allow_postfix_local_write_mail_spool

我应该在引用的帖子中设置相同的sendmail selinux策略吗?

这是php脚本内容:

$name = $_POST['yourname'];
$lastname = $_POST['yourlastname'];

$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";

$message = "this message was sent by " . $name . ",   " . $lastname . " \r\n";
$forperson = 'myemail@myemail.org';
$subject = 'new message';

echo $message;
mail($forperson, $subject, utf8_decode($message), $header);

提前感谢任何建议。

0 个答案:

没有答案