墨裔 发表于 2016-2-16 17:33:08

【终极解决方案】QQ互联登录connect_error_code_20003错误,code_0错误

由于QQ互联官方接口的升级,原有旧接口(oAuth1 接口)已经无法正常使用

凡是出现 20003 错误的 Discuz! 论坛必须开启 QQ 互联 的 oAuth2 模式,这需要您服务器的 PHP 能正常访问 HTTPS 远程页面,请确保 PHP 拥有扩展 php_curl、php_openssl 开启 HTTPS 的访问功能,并且无防火墙等系统级拦截。

在确保此功能正常的情况下,下载本帖所附的附件,更新到 QQ互联插件目录(source/plugin/qqconnect),然后访问 URL。
如您不了解如何开启此功能,请联系您的服务商解决。

http://你的域名/plugin.php?id=qqconnect:oauth_switch 切换到 oAuth2 模式

切换完毕后删除 oauth_switch.inc.php 文件
oauth_switch.inc.php文件下载地址:qq互联oauth2切换工具
最新出现这个connect_error_code_20003问题,主要原因是QQ登录OAuth1.0的服务变得极不稳定了。
OAuth2.0的服务,安全性,便捷性都要比1.0强。这个也是早晚的事情。但是由于discuz官方提供的方案不是对所有的网站都有效,很多站长就碰到了各种问题。
经过排查调试,对这个错误通过一些解决方法,供大家在解决中参考。
重要的事情放在前面:
1、开启OAuth2.0登录方式,见猴子的置顶帖。执行那个升级就可以了。(不知道为什么我执行了2次才成功)
2、PHP开启curl方法和openssl。在phpinfo中可以查看到如下。




接下来就是特殊的事,也是问题的集中的地方:
如果你的论坛是X3.2 (X3.1应该也差不多,没分析),那么本身是支持OAuth2.0的登录的。采用猴子的置顶帖的方法是完全可以的。
页: [1]
查看完整版本: 【终极解决方案】QQ互联登录connect_error_code_20003错误,code_0错误