Код входа в систему OpenID не работает на реальном сервере

Я хочу реализовать систему входа OpenID с последним LightOpenID ], я тестирую пример с исходным кодом построчно (я просто заменил localhost на $ _ SERVER ['HTTP_HOST'] в конструкторе).

Проблема в том, что все работает нормально в моем окне разработки внутри частной сети (PHP / 5.3.6 в Windows Vista), но проверка всегда терпит неудачу на моем жизненном сервере в общедоступной сети HSP (PHP / 5.3.3 в CentOS).

Я добавил повсюду var_dump () и могу сказать вам, что обе копии кода производят точно такие же параметры запроса и получают точно такие же параметры ответа (через GET). Только openid.assoc_handle , openid.sig , openid.response_nonce и openid.return_to имеют разные v alues, что, я думаю, является ожидаемым поведением.

Однако мой блок разработчика получает это от провайдера OpenID (независимо от того, какой из них я использую):

is_valid:true
ns:http://specs.openid.net/auth/2.0

... и моя живая лиса получает это:

is_valid:false
ns:http://specs.openid.net/auth/2.0

Здесь нет никаких символов, отличных от ASCII, поэтому это не может быть проблема с кодировкой. Должно быть, что-то не так с моим хостингом, но я просто не могу понять, что именно.

Мне нужны предложения о возможных причинах и советы по устранению неполадок.

6
задан Álvaro González 18 November 2011 в 19:00
поделиться