1、安装sendmail组件
命令:yum install sendmail
。
解释:在CentOS系统中使用yum包管理器来安装sendmail组件。
2、重启php-fpm进程
命令:/etc/init.d/php-fpm restart
。
解释:通过重启php-fpm进程,使新的sendmail配置生效。
3、检测sendmail是否运行正常
命令:/etc/init.d/sendmail status
。
解释:检查sendmail服务的状态,确保其正在运行,如果显示“running”,则表示正常运行。
4、配置php.ini文件
命令:vi /usr/local/php/etc/php.ini
。
操作:找到并修改sendmail_path
的配置项,将其设置为/usr/sbin/sendmail -t –i
。
解释:指定sendmail的绝对路径,确保PHP能够正确调用sendmail组件。
5、再次重启php-fpm进程
命令:/etc/init.d/php-fpm restart
。
解释:为了确保配置更改生效,需要再次重启php-fpm进程。
6、测试邮件发送功能
方法:创建一个名为mail.php
的PHP文件,编写测试代码,并在浏览器中访问该文件以测试邮件发送功能。
示例代码:
<?php $txt = "hello, you are a good boy!"; $mail = 'somebody@example.com'; mail($mail, "Mysubject", $txt); echo 'message was sent!'; ?>
解释:通过简单的PHP脚本测试邮件发送功能是否正常工作。
通过上述步骤可以解决LNMP环境下mail函数不能发送邮件的问题,如果遇到问题,可以检查每个步骤是否正确执行,或者查看相关日志以获取更多信息。