今天突然想在自己的wordpress注册下账号,发现其实一直以来都是无法发送邮件的!通过phpinfo函数查看已经确定mail()函数是开启的,通过搜索发现原来要使用mail函数,还需要系统组件支持的,不止php就够了,哈!
问题根源
没有安装或启动 sendmail 组件
我是新手,命令不熟,所以写的很详细,老鸟勿喷哦
1.重新安装 sendmail 组件,
CentOS系统
1、检测sendmail是否运行正常
/etc/init.d/sendmail status
提示:No such file or directory 大爷 原来还没安装哈
2、yum install sendmail
3、检测sendmail是否运行正常
再运行/etc/init.d/sendmail status 看到 sendmail is stopped
执行下start下
Starting sendmail: [ OK ]
Starting sm-client: [ OK ]
再看看status 变成 sendmail (pid 4105) is running…
/etc/init.d/sendmail start (启动sendmail)
/etc/init.d/sendmail stop (关闭sendmail)
/etc/init.d/sendmail restart (重启sendmail)
4、修改配置php.ini,填写sendmail的绝对路径
使用命令打开编辑php.ini
修改为:sendmail_path = /usr/sbin/sendmail -t -i
5、重启php-fpm进程
/etc/init.d/php-fpm restart
6、发送下测试代码
$text = “This is a test!”;
// 将邮箱地址改成你的
$mail = ‘ken@netpc.com.cn’;
// 发送邮件
mail($mail, “Mail Test”, $text);
echo “Message has been sent !”;
exit();
我是发送成功了,可是整个过程很慢,不知道哪里有问题,可能换成stmp方式会快些!