fsockopen()被禁用后的邮件发送问题
WordPress发送邮件的功能,一直以来都是靠插件解决的
换了一个主机商后,发现不能发送邮件了,使用wp-mail-smtp发送测试邮件给出的错误提示为: SMTP -> ERROR: Failed to connect to server:()
折腾一天后发现,原来是fsockopen函数被禁用了
找到wp-includes/class.smtp.php,174行
$this->smtp_conn = @fsockopen($host,$port,?$errno,?$errstr,$tval);
修改为
$this->smtp_conn = @pfsockopen($host,$port,?$errno,?$errstr,$tval);
替换之后再次失败了,pfsockopen函数也被禁用了,再次修改为
$this->smtp_conn = @stream_socket_client("tcp://".$host.":".$port, $errno, $errstr,$tval);
OK了,这回可以发送邮件了
这些函数还和邮件有关。。
@peascloud 看来你只用Mail函数
这都可以呀,不是说主机商禁用函数就发不了邮件么
还是有别的办法的
貌似没有遇到过~~
这个问题我以前也遇到过。