phpcms邮件发送失败怎么办?
phpcms邮件发送失败的原因:
1: 最好的就是使用企业邮箱,(使用普通不知为啥不成功)
2:如果本地测试成功,服务器上测试失败,可能是服务器配置禁用fsockopen函数的原因
通过phpinfo查看disable_functions项是否有fsockopen,如果有,说明就是这个问题。
立即学习“PHP免费学习笔记(深入)”;
解决办法:
打开: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教程,欢迎在线学习!
以上就是phpcms邮件发送失败怎么办的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号