作者:星知苑 时间:2014-01-30 14:47:31
最近打算更换博客邮件的通知的帐号和密码,一直使用QQ的邮箱作为发件邮箱(设置了域名邮箱)通过phpmailer来发送各种邮件,但是密码是常用QQ密码有点不安全,所以换个QQ号绑定域名邮箱作为新的发件邮箱,随后各种问题来了,折腾了好久终于解决了。
使用sendmail插件(二次开发过的),不要纠结我过程中的一些设置。
1、换个QQ邮箱出现SMTP Error: Could not authenticate 错误。
报错中会有这个QQ邮箱客户端设置的帮助网站http://service.mail.qq.com/cgi-bin/help?id=28[break]
从此面了解到:新的QQ邮箱只有使用安全连接SSL才可以。(QQ一些等级高的和QQ邮箱这些服务器开通很久的用户除外)一般看到报错信息中有上面这个网址,要么邮箱后台没有开启smtp发件,要么需要使用SSL安全连接。
那么也就了解到必须使用SSL连接了,由于二次开发过插件,早就把SSL和TLS,以及一般的连接模式作为选项集成在插件上了。
2、使用安全连接SSL还是报错SMTP->ERROR: Failed to connect to server
SMTP NOTICE: EOF caught while checking if connected SMTP connect() failed
注:但是本地环境(win)测试可以发件,但是服务器环境(centos)报错。
本地正常说明用户名,密码都没错,设置也没错,是服务器的设置问题。测试了不同的邮箱也是这个问题,确定了是服务器的问题。
联系服务商明确给我了答案,这个是ipv6引起的,已知PHP BUG(至少5.3.2之前)。当然也给我了解决办法,把邮件服务器域名换成IP地址。
之后测试就可以正常使用了。