万网主机WordPress通过fsockopen函数调用SMTP来发送邮件

最近一定有一大波的同学涌入万网的免费主机,不过我也去体验了一下,配置和速度还是比较给力的,只不过限制了一部分函数,比如mail()函数。大家会发现就算通过smtp插件都无法发送邮件,那么怎么解决。

万网没有开启 stream_socket_client 函数导致没有办法通过 WordPress 的SMTP 接口发邮件,经过朔月查看了主机的php配置后,发现有个函数选项fsockopen可以选择开启,fsockopen函数可以用来发邮件。

但是WordPress默认调用的是mail()函数来发送邮件,我们需要通过修改wp-includes/class-smtp.php文件来达到我们想要的功能,即通过fsockopen来发送邮件。

修改wp-includes/class-smtp.php下:

$this->smtp_conn = @stream_socket_client(
$host . ":" . $port,
$errno,
$errstr,
$timeout,
STREAM_CLIENT_CONNECT,
$socket_context
);

降上面的代码注释掉,使用以下代码代替

$this->smtp_conn = fsockopen($host, $port, $errno, $errstr);

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:22   其中:访客  15   博主  7

  1. avatar 肖振杰博客 1

    WordPress,看来确实不错啊。很多博主都在用

  2. avatar 兄弟一生一世 3

    学习了,也根据提示进行了更改,不知道效果怎么样,还是谢谢大哥了!

    • avatar Lin-D

      @兄弟一生一世 如果现在你能收到邮件的话 就说明有效果

      • avatar 兄弟一生一世 3

        @Lin-D 大哥,邮件收到了,那我还用不用配置个SMTP插件啊?

        • avatar Lin-D

          @兄弟一生一世 不需要了。原来怎么配置就怎么配置

          • avatar 兄弟一生一世 3

            @Lin-D 谢谢大哥解答~~还有大哥,我的头像怎么在您这个网站没有显示啊?

          • avatar 兄弟一生一世 3

            @Lin-D 我测试时发现邮件还是不能回复

          • avatar Lin-D

            @兄弟一生一世 头像是显示的,我这边有显示,还不能邮件通知的话,检查smtp设置

  3. avatar 兄弟一生一世 3

    我用php探针测试了一下,发现主机支持mail函数,但是不能发送邮件,SMTP插件我也试过,还是不行,原来用的新网的主机可以用SMTP发送邮件,现在转到万网之后发现SMTP都不能发送邮件了

    • avatar Lin-D

      @兄弟一生一世 探针看的是服务器的函数,不是虚拟机的,万网那款免费的是禁用了的

  4. avatar 兄弟一生一世 3

    好吧,我回去再设置一下

  5. avatar Dextrad 3

    大哥,你是不是用的万网的免费主机啊?

    • avatar Lin-D

      @Dextrad 不是,我用的美国的VPS

  6. avatar Dextrad 3

    好吧,我在整整

    • avatar Lin-D

      @Dextrad 我又去看了下那个主机,首先你要去控制面板php.ini设置里fsockopen函数打开,然后再按照上面说的修改class-smtp.php,最后检查你的smtp插件设置的服务器端口等,还有你主题是否有回复评论实现邮件通知的功能。

  7. avatar Dextrad 3

    好的,我再去设置一下

  8. avatar IT站长 0

    博主牛掰呀

  9. avatar 兄弟一生一世 3

    大哥,谢谢你,终于弄好了

  10. avatar 兄弟一生一世 3

    感谢大哥

  11. avatar 小乐丫中文网 1

    学习了,也根据提示进行了更改。谢谢分享

  12. avatar 张new 0

    http://zhangnew.com/easy-wp-smtp/ 十分感谢,已转载并给出了原文链接