На пару лет позже, но это может быть актуально для пользователей, использующих Janrains PHP OpenID 2.2.2 на платформе Windows. Я все еще на PHP 5.2.17.
Мой простой тест, просто чтобы убедиться, что библиотека связывается с Google, должен был использовать программу examples / Discover.php и передать URL-адрес Googles OpenID (https://www.google.com/accounts/o8/id).
Согласно инструкциям, стандартными шагами являются включение GMP (uncomment extension = php_gmp.dll) и CURL (uncomment extension = php_curl.dll). XML уже должен быть включен.
Вам также может понадобиться извлечь пакет из contrib / google и убедиться, что google_discovery.php и ca-bundle.crt находятся в Auth / OpenID.
Дополнительный параноик может начинаться с examples / detect.php, чтобы убедиться, что они настроены правильно. Ожидается, что вы пройдете все тесты, кроме теста на криптографическую случайность. Для этого вам нужно будет добавить
define('Auth_OpenID_RAND_SOURCE', null);
к началу примеров / detect.php. И пока вы там, добавьте это в examples / consumer / common.php (так как examples / Discover.php использует его).
Теперь, даже после всего этого, поиск по URL-адресу Google OpenID не удался. Я получаю CURL error (60): SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
в журнале ошибок php.
В среде Windows вам нужно определение для CURLOPT_CAINFO. Для моего быстрого теста я добавил curl_setopt($c, CURLOPT_CAINFO, dirname(__FILE__)."/../OpenID/ca-bundle.crt");
перед операторами curl_exec () в Auth / Yadis / ParanoidHTTPFetcher.php.
Это позволило examples / learn.php обнаружить службы, предлагаемые URL-адресом Google.
В качестве более долгосрочного решения для настройки CURLOPT_CAINFO в Windows вы можете обратиться к этому ответу StackOverflow , чтобы вы могли добавить параметр в свой php.ini.