• 4.3之前版本BUG
  • 新问题解决办法
  • 首页
  • 渗透
  • 折腾
  • 转载
  • 关于Me
  • 榜上有名
  • 文章存档
  • 友情链接

不妨看看这里

会员面板

Base64 Image

SMTP Error: Could not authenticate.解决方法

  • Mr.Wu
  • 2017-04-18
  • 0

4.3之前版本BUG

新建的博客设置SMTP发信的时候,又遇到了曾经遇到的问题,记得当时遇到后折腾半天才找到解决半天 在class-smtp.php 200行找到了如下代码:
$socket_context = stream_context_create($options);
        //Suppress errors; connection failures are handled at a higher level
        $this->smtp_conn = @stream_socket_client(
            $host . ":" . $port,
            $errno,
            $errstr,
            $timeout,
            STREAM_CLIENT_CONNECT,
            $socket_context
        );
根据PHP Manual给出的两个函数帮助,可以将上面的代码转化为
$this->smtp_conn = fsockopen($host,$port,$errno,$errstr,$timeout);
记得需要将fsockopen函数打开,然后就可以发信正常了。 4.3之后的版本已经修复了该BUG,在class-smtp.php的247~297行便是做了更改的内容,由之前的单一的使用stream_socket_client函数改为了使用前利用function_exist函数判断函数可用性后再调用的方式.

新问题解决办法

装上插件后始终提示:SMTP Error: Could not authenticate.  身份验证失败。 刚开始以为又要改什么代码,因为我老站和新站一个服务器,我又是直接将老站的SMTP插件复制过来的,那么唯一需要改的就是WP本身的文件,于是我直接将老站的class-smtp.php复制过来替换,然而并没有什么卵用。。。 这就神奇了哈,2个站同服,那么问题不是出在服务器上,不是出在函数上,也不是出在代码上,难道是QQ? 打开QQ邮箱瞎点了半天终于让我找到解决办法了。。。 在QQ邮箱账户设置中: 不知道从什么时候开始,QQ邮箱改成这种了,坑爹的,这不验证失败才怪,原来密码根本不是邮箱密码,而是授权码,将这个授权码复制到SMTP插件中的密码那一栏,然后保存在测试发现,果断成功。。。满满的坑。。。
© 2025 MrWu
Theme by Wing-child
  • {{ item.name }}
  • {{ item.name }}