网上查了一下,原装LNMP环境里没有没有安装sendmail 组件。
只需要启动sendmail 相关服务,配置php.ini文件路径就可以正常发送邮件。下面说一下方法。
1、安装sendmail 组件
- yum install sendmail
2、重启php-fpm进程
- /etc/init.d/php-fpm restart
如果重启出现失败,或者卡住了。建议关闭putty,重新登录后直接重启lnmp(我就遇到这个情况,是这么解决的),命令如下:
- /root/lnmp restart
3、检测sendmail是否运行正常
- /etc/init.d/sendmail status
如果显示 sendmail 和 sm-client 都正在运行running 就证明启动成功了。如果都是stop,你可以试一下这些命令:
- /etc/init.d/sendmail start (启动sendmail)
- /etc/init.d/sendmail stop (关闭sendmail)
- /etc/init.d/sendmail restart (重启sendmail)
注意启动sendmail组件的时候多等一会。不要没反应过来就关闭窗口。
4、配置php.ini,填写sendmail的绝对路径
使用命令打开编辑php.ini,也可以直接用ftp软件直接进入目录找到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 保存退出
最后再重启一下lnmp就可以了。测试了一下,邮件发送成功。