linux中mail函数不能发送邮件,linuxmail


没有安装或启动 sendmail 组件

解决办法

我是新手,命令不熟,所以写的很详细,老鸟勿喷哦

1.重新安装 sendmail 组件,我用的是 CentOS ,使用下面的命令安装

代码如下 复制代码

yum install sendmail

2.使用下面的命令重启php-fpm进程

 

代码如下 复制代码
/etc/init.d/php-fpm restart

3.检测sendmail是否运行正常

 

代码如下 复制代码
/etc/init.d/sendmail status

如果显示正在运行running 就可以。

可能用到的命令

代码如下 复制代码
/etc/init.d/sendmail start (启动sendmail)

/etc/init.d/sendmail stop (关闭sendmail)(www.111cn.net)

/etc/init.d/sendmail restart (重启sendmail)

4.配置php.ini,填写sendmail的绝对路径

使用命令打开编辑php.ini

代码如下 复制代码

vi /usr/local/php/etc/php.ini

输入?sendmail_path 查找定位(或者手动跳转找到sendmail_path),你会发现默认是下面的代码

代码如下 复制代码

;sendmail_path =

按 i 进入编辑,将这行修改为

代码如下 复制代码

sendmail_path = /usr/sbin/sendmail -t -i

按 Esc 键退出编辑,输入 :wq 保存退出

5.重启php-fpm进程

代码如下 复制代码

/etc/init.d/php-fpm restart

from:http://www.111cn.net/sys/linux/54544.htm


Linux 下不可以使用mail命令发送邮件

根据你描述的情况,使用mail发邮件是通过本机的postfix来发送的。如果本机的的postfix配置中启用了relay,则会将发信请求转发到relay机器进行投递。如果此时通过mail发不出邮件,则问题有可能出现在relay的服务器上。
你说的通过php是可以发邮件的,这个和使用mail是两回事。如果php程序使用的是自己的发信程序,那与本机的postfix可能就没有什么关系。这其中具体的配置还要看程序是怎么设计的。
 

linux php mail问题:我用mail函数来发送邮件(下面是示例代码),我直接运行 php mailphp可以收到邮件,

可能是用户权限问题。

你执行PHP mail.php 的用户 和 php程序宿主的用户不一个吧?

用的什么邮件系统?
 

相关内容