php发送邮件出现Error: Could not connect to SMTP host的解决方法 | 胡鹏博客
首页 > php资料 > php发送邮件出现Error: Could not connect to SMTP host的解决方法
2014十一月18

php发送邮件出现Error: Could not connect to SMTP host的解决方法

“不能连接SMTP服务器.”(Error: Could not connect to SMTP host)

更换空间或者服务器发送邮件出现“不能连接SMTP服务器.”(Error: Could not connect to SMTP host),如果服务器禁用了fsockopen()函数就会导致PHPmailer连接远程SMTP服务器就会出现上述错误。
下面给出解决方法:
如果是自己的服务器,请直接编辑php.ini在disable_function中找到fsockopen并删除,重启php试试吧。
如果无法更改php.ini,请用pfsockopen()函数直接替换掉 fsockopen()
如果pfsockopen函数被禁用的话,换其他可以操作Socket函数来代替, 如stream_socket_client()

举例wordpress发送邮件:
找到wp-includes/class.smtp.php 文件

@fsockopen 改成 @pfsockopen

$this->smtp_conn = @fsockopen(
$host, // the host of the server
$port, // the port to use
$errno, // error number if any
$errstr, // error message if any
$tval); // give up after ? secs
// verify we connected properly

$this->smtp_conn = @pfsockopen(
$host, // the host of the server
$port, // the port to use
$errno, // error number if any
$errstr, // error message if any
$tval); // give up after ? secs
// verify we connected properly

这样就能成功的发送邮件了。

更多
本文目前尚无任何评论.
您必须在 登录 后才能发布评论.