当前位置:首页 »“秋了秋”个人博客 » 网络技术 » 服务器主机发不了邮件解决办法攻略(邮件函数禁用问题)

服务器主机发不了邮件解决办法攻略(邮件函数禁用问题)

作者:秋了秋 发表时间:2014年06月03日

最近本站搬家,搬到了浪点云主机,速度翻了好几番,但发现一个问题,mail()函数又出现堵塞,只能用smtp插件发邮件,但是主机商为了安全把邮件函数fsockopen和stream_socket_client给禁用了,插件也发不了邮件的,所以邮件功能几乎用不了。但是由于空间速度的优越性,不忍心放弃。遂寻找解决之道。大家都知道,邮件功能对wordpress的重要性,一个wordpress没有邮件功能几乎是半残的。一开始主机商并不知晓wp的解决办法,询问几次都无果。只知道叫你把fsockopen函数用pfsockopen函数替代,可他并不知道怎么替换,所以自己的程序还得靠自己。

一开始我只知道他禁用了fsockopen函数而不知道他也禁用stream_socket_client函数,所以尝试了很多办法都失效了,最后综合网上一些情况的解决办法总结出了一个办法。

首先要清楚smtp发邮件调用wp的哪个文件,就是wp-includes/class-smtp.php文件,找到它,搜索stream_socket_client,只有一处地方使用了该函数:

  1. $this ->smtp_conn = @stream_socket_client(
  2.     $host ":" $port ,
  3.     $errno ,
  4.     $errstr ,
  5.     $timeout ,
  6.     STREAM_CLIENT_CONNECT,
  7.     $socket_context
  8.     );

把这一块代码改成:

  1. $this ->smtp_conn = @ pfsockopen (
  2.     $host ,
  3.     $port ,
  4.     $errno ,
  5.     $errstr ,
  6.     $timeout
  7.     );

然后在后台重新启用插件,最好重新设置一遍参数,再点击邮件发送测试,必定可以发送了,如还不能发送,那就不是这个问题的问题了。

邮件发送功能对一个wordpress来说非常重要,如果没有该功能,还得天天登陆后台查看有没有评论?重不重要?要不要回复?因为之前这几天该功能没有,造成很多评论我都不知道,以前我都是只要登着qq就能随时收发博客评论。如果smtp不能用,很多插件也会失效,包括QQ空间同步插件wordpress发表文章全文同步到QQ空间动态

1
文章作者: “秋了秋”个人博客,本站鼓励原创。
转载请注明本文地址:http://netblog.cn/blog/30.html

请求播放音乐,请点击播放

登 录
点击获取验证码
还没账号?点击这里