微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – apache如何允许发送电子邮件?

我有一台运行Apache 2.2和 PHP 5.3的CentOS 6.2虚拟机,我试图通过PHP的mail()函数发送电子邮件.我可以从CLI发送电子邮件没有问题,但是当PHP尝试失败时.在sendmail日志中如下:
Oct  9 11:42:03 localhost sendmail[3080]: NOQUEUE: SYSERR(apache): can not chdir(/var/spool/clientmqueue/): Permission denied

似乎Apache没有这样做的权限,但我不知道如何解决它.我已经发现了很多关于这个的讨论,但没有什么特别的,我正在做的,我可以使用.任何帮助将不胜感激.
谢谢!

首先你必须检查权限是否正确.以下是我系统中的权限

#ls -l /usr/sbin/sendmail.sendmail
-r-xr-sr-x root smmsp /usr/sbin/sendmail.sendmail

#ls -l / var / spool / clientmqueue
drwxrwx — smmsp smmsp / var / spool / clientmqueue

如果您的权限或所有权是错误的,请使用chown和chmod进行更改.

如果上面是正确的,那么禁用selinux,或者如果您希望启用selinux使用chcon来设置正确的selinux上下文.

http://docs.fedoraproject.org/en-US/Fedora/13/html/Security-Enhanced_Linux/sect-Security-Enhanced_Linux-Working_with_SELinux-SELinux_Contexts_Labeling_Files.html

对于禁用selinux暂时使用#setenforce 0

原文地址:https://www.jb51.cc/php/131445.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐