解决阿里云mail不能发邮件及sendmail启动慢发信慢的问题
转自 http://www.zh30.com/a-li-yun-mail-sendmail-qi-dong-fa-xin-man.html
以下是摘要:
在使用某php探针测试邮件功能时,发现无法发送,提示邮件发送失败。但是检测mail函数是正常。后来才知道这是阿里云的“问题”,因为阿里云提供的系统镜像都是绝对的精简版。系统中默认没有sendmail组件。所以解决方法就很简单的了,安装sendmail。
使用管理终端登录centos,执行命令:yum install sendmail
安装sendmail组件。>
安装完sendmail后还不能直接使用,还需要再设置一下hosts来解决sendmail启动慢和sendmail发送邮件慢的问题。
第一步:进入vi编辑模式
vi /etc/hosts
使用vi编辑器打开hosts文件,默认的hosts一般像下图这样:
注意第一行127.0.0.1后面只有一个localhost,第二行的::1不用管,双冒号1是针对ipv6用的,第三行一般会有一个ip,后面跟着一个长字符串(如果::1下面还有多行的话,记住那个和你控制台中的实例id不一样的那个),记下这个串。
然后修改第一行,加上localhost.localdomain和第三行那个串,变成如下图的样子
最后, 修改php.ini中的sendmail_path配置,如果使用的是cgi(php-fpm),则修改php-fpm.conf文件。
打开php.ini或php-fpm.conf,搜索找到sendmail配置的位置。修改sendmail_path,加上-f你的用户名@你的域名,如:
sendmail_path = /usr/sbin/sendmail -fadmin@zh30.com -t -i
php-fpm.conf中的那行应该是类似:
<value name="sendmail_path">/usr/sbin/sendmail -fadmin@zh30.com -t -i</value>
最后,保存重启你的web服务和sendmail服务。