php邮箱发送API(phpcms发送邮件失败怎么办)
phpcms发送邮件失败怎么办?解决Phpcms邮件无法发送
网站放到服务器上时 ,发现了一个很大的问题 ,什么问题呢?
在本地能够完美使用的邮箱服务居然不能使用了,这使得小编百思不得其解 ,在网上疯狂的找解决办法 ,结果发现一个有用的都没有 。
最后没办法了 ,问了问服务器商 ,发现fsockopen函数是没被禁用的(这个函数是phpcms发邮件十分重要的一个函数) ,最后调出phpcms的错误日志(phpcms的错误日志为error_log.php文件)来看(错误日志的位置为:根目录/caches/error_log.php) ,发现每点一次发送邮件 ,错误日志就会多出同一个错误(fsockopen(): unable to connect to smtp.163.com:25 (Connection timed out)) 。
这句话的原意是无法连接到邮件地址的25端口(小编这里使用的邮件服务器是163的) ,换句话说就是服务器禁止25端口 。
小编这里使用的是阿里云服务器 ,经过和服务器商的讨论发现,阿里云服务器默认禁止邮件的25端口 ,要开通还要申请 ,非常的麻烦,还不一定通过 。
小编于是就换成了465端口 ,因为465端口服务器没禁止 。可是单单的把phpcms后台的邮件发送端口改成465也不能发送邮件 ,那又如何更改呢?
其实很简单的,在邮件服务器那行改成:ssl://smtp.163.com(这里可以换成QQ的 ,新浪的 ,但是前面的ssl://别忘了) ,这样就行了 。
怎么样有没有帮助到你们呢?其实想要在阿里服务器上发任何邮件都是不能使用25端口的哟 ,如果用了请改成465就好了 ,对了别忘记验证密码就是客户端授权密码 ,邮件设置测试就是接受邮件的邮箱地址 。
PHP中文网 ,大量的免费PHPCMS教程 ,欢迎在线学习!
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!