php如何发送邮件(phpcms邮件发送失败怎么办)
phpcms邮件发送失败怎么办?
phpcms邮件发送失败的原因:
1: 最好的就是使用企业邮箱 ,(使用普通不知为啥不成功)
2:如果本地测试成功 ,服务器上测试失败 ,可能是服务器配置禁用fsockopen函数的原因
通过phpinfo查看disable_functions项是否有fsockopen ,如果有 ,说明就是这个问题 。
解决办法:
打开:phpcms\modules\member\classes\client.class.php ,
把78行的: if(!$fp = fsockopen($mail[server], $mail[port], $errno, $errstr, 30)) {
改为: if(!$fp = pfsockopen($mail[server], $mail[port], $errno, $errstr, 30)) {
即把fsockopen改为pfsockopen 。
PS:有些主机商禁用fsockopen函数功能 ,为了防止黑客利用程序漏洞注入后使用 fsockopen 进行PHPDDOS 攻击 。
fsockopen函数与pfsockopen函数 ,区别在于 pfsockopen 保持 keep-alive ,使得黑客无法进行 连接数攻击 。
PHP中文网 ,大量的免费PHPCMS教程 ,欢迎在线学习!
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!