2011-07-08 28 views
0

我有我的機器上的本地虛擬主機上運行的示例-mysql.php LightOpenID提供程序腳本。我更新了表名和mysql_connect()參數以在我的本地機器上工作。我還在users表中創建了一個用戶。LightOpenID - 提供者 - 腳本停留在「允許一次」,「允許總是」,「取消」

我使用example.php LightOpenID使用者腳本來測試提供者腳本。一切工作,直到我到「http:// site1」要訪問,允許一次,允許始終,取消。按任意一個允許按鈕都會創建一個新的Allowedsites行,但是頁面只是再次按下按鈕而刷新。它驗證我的登錄信息對數據庫或者我會得到「錯誤的用戶名/密碼」,但從來沒有完成處理並重定向我...

提供腳本:https://gist.github.com/1072612 消費者腳本:https://gist.github.com/1072613

回答

0

你可能已經進入了一個錯誤的身份網址。

例如,假設提供者是provider.example.org:

一個不正確的身份將是http://provider.example.org/example-mysql.php。提供商會要求您提供登錄名和密碼,請求授權,然後默默失敗,因爲http://provider.example.org/example-mysql.php無法解析爲任何登錄。

http://provider.example.org/example-mysql.php?Mewp將是這個例子的正確標識。

避免這種情況的一種方法是在url中沒有登錄時設置$op->select_id = true,這將導致服務器將both claims_id和identity都返回到正確的url(如google)。

+0

這就是它。我將$ op-> select_id設置爲true,並提供http://example.org作爲我的身份。 (provider是index.php)。現在我有一個稍微不同的問題。 http://stackoverflow.com/questions/6658349/lightopenid-provider-issued-an-assertion-for-an-identifier-whose-discovery-info – Chris