LNMP的mail函数不能发送邮件解决办法

编译好的LNMP环境下,WordPress的WP Tread Comment插件的自动发送回复邮件功能失效了!!然后我又安装了个PHP探针,测试mail函数是存在的,但是发邮件死活发不出去。

怪哉了,之前我的独立服务器和VPS编译LNMP环境都没有出现这样的问题,一时间丈二的和尚摸不着头脑了。

冷静下来之后,我试着对比了能发邮件和不能发邮件的PHP配置文件,答案是相同的,也就是说没有设置上的问题导致不能发送邮件。试着用Linux下的Shell命令mail发送邮件,新的VPS提示这个命令不存在!!

再做进一步的检查,发现这个VPS默认没有安装sendmail这个Linux下的基本邮件组件。看来问题就在这里了!!通过重新安装 sendmail(我用的CentOS,则是使用yum install sendmail来安装)之后,重启php-fpm进程,结果还是发送失败。

用Shell下的mail命令进行测试,能够正常发出E-Mail,没有任何问题。但是PHP下的mail()函数就是死活不行。

继续网上搜索资料,结果发现编译PHP的时候,需要确保sendmail组件是已经安装好了的,不然发送邮件就不行。但是我又不想重新编译一次PHP(太费时间了),有没有别的办法呢?——答案当然是有的。

只需要在php.ini文件中,找到mail部分的设置,将下面这个参数设置下即可:

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

也就是说让系统找到sendmail的绝对路径,这样就不会有问题啦!重启PHP,测试发送邮件,成功!!

文章来源:http://www.d9ba.com/1537.html

思章老师

认准了方向,就要勇敢地走下去,十年磨一剑,我相信,只要坚持,一切都有可能。

相关日志

  1. 没有图片

    2009.07.26

    几款免费的优秀的图片存放和分享的网站

    大家都知有名的图片存放和分享网站 Picas…

  2. 2013.10.25

    WordPress 3.7 Basie 正式版发布

    今天WordPress 3.7 正式版发布了…

  3. 没有图片

    2010.05.12

    WordPress评论统计的一大Bug

    WordPress目前来看已经很完善了,但菠…

  4. 没有图片

    2009.07.27

    Dreamweaver CS4 数码教室 PDF电子书

    本书内容有:Dreamweaver CS3的…

  5. 没有图片

    2012.02.15

    linux下解压zip文件

    linux自带的unzip命令可以解压win…

评论