2012-04-25 20 views
3

使用LightOpenID庫,我設法成功實施的OpenID在我的網站。 但是,幾天前,當使用Google作爲提供者時,它停止工作(它使用Yahoo!運行正常)。 從我實施OpenID的那一天開始,它使用任何提供程序運行良好。我甚至有幾個用戶使用他們的Google帳戶登錄。然而,奇怪的是,前幾天谷歌停止工作(而其他供應商仍然運行良好),在$ openid-返回false>的validate()谷歌突然開始返回驗證爲假使用LightOpenId

我使用不帶修飾的例子,google.php文件進行試驗,通過LightOpenID,但我沒有運氣。我還測試了使用不同的Google帳戶,也沒有運氣。我甚至在不同的網站上測試過,但仍然沒有運氣。請注意,我用的共享主機和捲曲安裝,運行版本7.19.7

難道谷歌最近做它的系統上的任何變化就是現在造成的?這個問題還有其他原因嗎?

+1

此問題是否已解決?它是怎麼做的! – 2012-05-05 14:20:21

回答

0

其他人都在說,使捲曲(這可能是你的問題),但對我來說捲曲經啓用。

一些較周圍窺探,我發現該請求正在經歷request_streams()由於以下檢查函數請求(格式爲方便起見)未:

if (
    function_exists('curl_init') && 
    (
    !in_array('https', stream_get_wrappers()) || 
    !ini_get('safe_mode') && 
    !ini_get('open_basedir') 
) 
) { 

將其更改爲:

if (
    function_exists('curl_init') && 
    (
    !in_array('https', stream_get_wrappers()) || 
    (
     !ini_get('safe_mode') && 
     !ini_get('open_basedir') 
    ) 
) 
) { 

希望這會有所幫助。

編輯:忘了說我不確定Google是否做出了一些改變,但事實是很多人同時使用同一個庫有同樣的問題意味着發生了一些事情,我可以說大多數人可能沒有改變一件事。谷歌可能會彈出一些開關來製造更多限制/安全措施。

+0

謝謝你的迴應!但不幸的是,這並不適合我。我有cURL啓用(curl_init()沒有問題),使這個問題更令人沮喪。我試圖刪除這個檢查,並自動使用request_curl(),但沒有奏效。 – Edgard 2012-04-26 19:24:00

+0

這很奇怪。這對我有用,所以我認爲它可能適合你。對不起,我忍不住了。關於這一點最奇怪的部分是,直到幾天前它一直爲大家工作。 Google你做了什麼? - 忍者編輯:檢查http://stackoverflow.com/questions/4694986/google-openid-not-working-with-openid-plugin-in-wordpress – Kysol 2012-04-27 06:11:00

0

添加到這個線程多一點信息。

我曾與文件數據流(在「的file_get_contents」)也問題。我如上所述強制捲曲。 (問題與谷歌只。雅虎是工作的罰款)

與我共享的主機,我也不得不註釋掉「CURLOPT_FOLLOWLOCATION」選項。