LNMP环境安装sendmail组件邮件发送功能
1、第一、重新安装sendmail组件
在重新安装之前,最好我们先清空sendmail组件(yum -y remove sendmail),或者使用(/etc/init.d/sendmail status)检测,万一之前也有安装。

2、第二、重启php-fpm进程
/etc/init.d/php-fpm restart

3、第三、启动sendmail
/etc/init.d/sendmail start
(注:启动的时候需要等一会,不要以为卡住不动,等等,不要着急。)

4、第四、检查sendmail是否运行
/etc/init.d/sendmail status
(注:这里检测是在running运行的,但确保能够完好兼容,再执行下面步骤。)

5、第五、修改php.ini文档
编辑/usr/local/php/etc/php.ini文档,找到sendmail_path一行,设置为:
sendmail_path = /usr/sbin/sendmail -t -i


6、最后,重启php-fpm
/etc/init.d/php-fpm restart
(注:这样,完整的sendmail就可以完毕实现,比如密码找回、注册提醒等都可以实现。如果需要评论提醒,比如WORDPRESS有些是需要组件和功能支持的,并不是所有主题都支持的。)
最好反过来再用 /etc/init.d/sendmail status
检查sendmail是否运行
附几个sendmail常用管理命令/etc/init.d/sendmail start (启动sendmail)/etc/init.d/sendmail stop (关闭sendmail)/etc/init.d/sendmail restart (重启sendmail)

1、请检查hosts:cat /etc/hosts
结果发现:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

2、结果发现并没有hostname,将其加入,查看主机名称直接命令:hostname ,这里加入主机名称为:i-kqjkix8w,则改过后的内容则为:

3、重启sendmail
service sendmail restart
(注:完成此步骤后还可以解决一个sendmail和sm-client启动慢的问题)
1、方法一:修改hostname为个人域方法二:伪装成user@domain.com
执行以下命令:
/etc/mail/sendmail.mc
打开后编辑文件,在末端加入以下内容:
MASQUERADE_AS(xxx.com)dnl FEATURE(masquerade_envelope)dnl FEATURE(masquerade_entire_domain)dnl MASQUERADE_DOMAIN(gongzi.me)dnl
将其中的xxx.com换成你自己的域名,然后保存。接着执行以下命令:
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
而后,重启sendmail服务。
(service sendmail restart)


2、执行 m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf 时,报错:sendmail.mc:10: m4: cannot open `/usr/share/sendmail-cf/m4/cf.m4': No such file or directory,并且导致sendmail相关服务无法正常启动。
原因:未安装sendmail-cf解决:执行以下命令:
yum install sendmail-cf
完成后问题解决。
重启sendmail服务(service sendmail restart)。