国产欧美二区三区-国产欧美高清-国产欧美国产精品第二区-国产欧美国产精品第一区-小说区 图片区-小说区 综合区 都市激情

當前位置: 首頁 > 站長資訊 > 正文頁面

discuz程序QQ互聯登錄connect_error_code_20003錯誤,OAuth2.0升級方法

最新出現這個connect_error_code_20003問題,很多網站都有這個問題。主要原因是QQ登錄OAuth1.0的服務變得極不穩定了。oLn網站目錄_網站網址收錄與提交入口

OAuth2.0的服務,安全性,便捷性都要比1.0強。這個也是早晚的事情。但是由于discuz官方提供的方案不是對所有的網站都有效,很多站長就碰到了各種問題。oLn網站目錄_網站網址收錄與提交入口

官網近期也出現了這個問題,已經嘗試過很多方法,一直沒成功。經過排查調試,對這個錯誤通過一些解決方法,供大家在解決中參考。oLn網站目錄_網站網址收錄與提交入口

重要的事情放在前面:oLn網站目錄_網站網址收錄與提交入口

1、開啟OAuth2.0登錄方式,見猴子的置頂帖。執行那個升級就可以了。oLn網站目錄_網站網址收錄與提交入口

2、PHP開啟curl方法和openssl。在phpinfo中可以查看到如下。oLn網站目錄_網站網址收錄與提交入口


oLn網站目錄_網站網址收錄與提交入口


oLn網站目錄_網站網址收錄與提交入口

接下來就是特殊的事,也是問題的集中的地方:oLn網站目錄_網站網址收錄與提交入口

如果你的論壇是X3.2 (X3.1應該也差不多,沒分析),那么本身是支持OAuth2.0的登錄的。oLn網站目錄_網站網址收錄與提交入口

在確保此功能正常的情況下,下載本帖所附的附件,更新到 QQ互聯插件目錄(source/plugin/qqconnect),然后訪問 URL。oLn網站目錄_網站網址收錄與提交入口

如您不了解如何開啟此功能,請聯系您的服務商解決。oLn網站目錄_網站網址收錄與提交入口

http://yourwebsite/plugin.php?id=qqconnect:oauth_switch 切換到 oAuth2 模式oLn網站目錄_網站網址收錄與提交入口

切換完畢后刪除 oauth_switch.inc.php 文件oLn網站目錄_網站網址收錄與提交入口

<-----qqconnect_oauth_switch.zip--->oLn網站目錄_網站網址收錄與提交入口

如果你是X3 或者以下。(本身插件不支持OAuth2.0)oLn網站目錄_網站網址收錄與提交入口

第一步、下載X3.2的源碼,把里面的plugin里的qqconnect文件夾,去替換你網站上的,并且去后臺系統插件里升級,升級后,數據庫里2個表會多2個字段,具體如果升級后找不到字段問題,論壇上有解決方法的,搜一下就可以解決,不難。oLn網站目錄_網站網址收錄與提交入口

第二步、在確保此功能正常的情況下,下載本帖所附的附件,更新到 QQ互聯插件目錄(source/plugin/qqconnect),然后訪問 URL。oLn網站目錄_網站網址收錄與提交入口

如您不了解如何開啟此功能,請聯系您的服務商解決。oLn網站目錄_網站網址收錄與提交入口

http://yourwebsite/plugin.php?id=qqconnect:oauth_switch 切換到 oAuth2 模式oLn網站目錄_網站網址收錄與提交入口

切換完畢后刪除 oauth_switch.inc.php 文件oLn網站目錄_網站網址收錄與提交入口

<---------qqconnect_oauth_switch.zip---->oLn網站目錄_網站網址收錄與提交入口

第三步、把X3.2的源碼里的plugin/manyou這個插件放到你的網站的對應plugin里的位置。oLn網站目錄_網站網址收錄與提交入口

這個manyou是云服務的一些方法在里面。X3是在api/manyou里,所以我估計替換manyou/Server這個文件夾也是可行的。oLn網站目錄_網站網址收錄與提交入口

第四步,做一些兼容的代碼改動oLn網站目錄_網站網址收錄與提交入口

主要是針對多出來的conuintoken這個字段做兼容。oLn網站目錄_網站網址收錄與提交入口

member_connect_logging.phpoLn網站目錄_網站網址收錄與提交入口

25行加入以下代碼:oLn網站目錄_網站網址收錄與提交入口

$conuintoken = $this->connect_guest['conuintoken'];oLn網站目錄_網站網址收錄與提交入口

33行:oLn網站目錄_網站網址收錄與提交入口

oLn網站目錄_網站網址收錄與提交入口

//if ($conuin && $conopenid) {oLn網站目錄_網站網址收錄與提交入口

修改為oLn網站目錄_網站網址收錄與提交入口

if ($conopenid) {oLn網站目錄_網站網址收錄與提交入口

member_connect_register.phpoLn網站目錄_網站網址收錄與提交入口

63行,增加oLn網站目錄_網站網址收錄與提交入口

$conuintoken = $this->connect_guest['conuintoken'];oLn網站目錄_網站網址收錄與提交入口

69左右oLn網站目錄_網站網址收錄與提交入口

//if (!$conuin || !$conuinsecret || !$conopenid) {oLn網站目錄_網站網址收錄與提交入口

// showmessage('qqconnect:connect_get_request_token_failed');oLn網站目錄_網站網址收錄與提交入口

// }oLn網站目錄_網站網址收錄與提交入口

改為oLn網站目錄_網站網址收錄與提交入口

if(!$_G['setting']['connect']['oauth2']) {oLn網站目錄_網站網址收錄與提交入口

if (!$conuin || !$conuinsecret || !$conopenid) {oLn網站目錄_網站網址收錄與提交入口

showmessage('qqconnect:connect_get_request_token_failed');oLn網站目錄_網站網址收錄與提交入口

}oLn網站目錄_網站網址收錄與提交入口

} else {oLn網站目錄_網站網址收錄與提交入口

if (!$conuintoken || !$conopenid) {oLn網站目錄_網站網址收錄與提交入口

showmessage('qqconnect:connect_get_request_token_failed');oLn網站目錄_網站網址收錄與提交入口

}oLn網站目錄_網站網址收錄與提交入口

}oLn網站目錄_網站網址收錄與提交入口

90行左右增加oLn網站目錄_網站網址收錄與提交入口

'conuintoken' => $conuintoken,oLn網站目錄_網站網址收錄與提交入口

class_cloud.phpoLn網站目錄_網站網址收錄與提交入口

43行oLn網站目錄_網站網址收錄與提交入口

$file = DISCUZ_ROOT . ‘/api/manyou/' . implode('/', $items) . '.php';oLn網站目錄_網站網址收錄與提交入口

改為oLn網站目錄_網站網址收錄與提交入口

$file = DISCUZ_ROOT . '/source/plugin/manyou/' . implode('/', $items) . '.php';oLn網站目錄_網站網址收錄與提交入口

關鍵一步oLn網站目錄_網站網址收錄與提交入口

DX3.2中的function_filesock 替換 source/function中的 function_filesock.phpoLn網站目錄_網站網址收錄與提交入口

最后,對小白用戶,提供一個檢測腳本,解壓縮后把里面的qqtest.php 放到bbs根目錄,然后url中打開就可以。oLn網站目錄_網站網址收錄與提交入口

如果沒有出現 YOU should install and open Curl_PHP 的提示,那么你的環境是正確的。CURL和ssl都是可以用的。oLn網站目錄_網站網址收錄與提交入口

<------qqtest.php.zip--------->oLn網站目錄_網站網址收錄與提交入口

附:判斷OAuth2.0是否啟用的方法。點擊qq登錄后跳到的地址是下面這個,就是1.0的oLn網站目錄_網站網址收錄與提交入口

http://openapi.qzone.qq.com/oauth/qzoneoauth_authorize?oauth_consumer_key=xxxxxx&oauth_token=xxxxxxoLn網站目錄_網站網址收錄與提交入口

跳到下面這個地址,就是2.0的oLn網站目錄_網站網址收錄與提交入口

http://openapi.qzone.qq.com/oauth/show?which=Login&display=pc&response_type=code&client_id=xxxx&redirect_uri=http%3A%2F%2Fwww.moke8.com%2Fconnect.php%3Fmod%3Dlogin%26op%3Dcallback%26referer%3Dforum.php%253Fmod%253Dviewthread%2526tid%253D3195653%2526extra%253Dpage%25253D1%2526page%253D1&state=xxxxx&scope=get_user_info%2Cadd_share%2Cadd_t%2Cadd_pic_t%2Cget_repost_listoLn網站目錄_網站網址收錄與提交入口

  

此文由 網站目錄_網站網址收錄與提交入口 編輯,未經允許不得轉載!:

相關文章