0

私のマシンのローカルホスト仮想ホストで実行されているexample-mysql.phpLightOpenIDプロバイダースクリプトがあります。ローカルマシンで動作するようにテーブル名とmysql_connect()パラメータを更新しました。また、usersテーブルにユーザーを作成しました。

example.php LightOpenIDコンシューマースクリプトを使用して、プロバイダースクリプトをテストしています。「http:// site1」にアクセスするまで、すべてが機能します。アクセスが必要、1回許可、常に許可、キャンセル。許可ボタンのいずれかを押すと、新しい許可サイトの行が作成されますが、ページはボタンで再度更新されます。データベースに対してログインを確認します。そうしないと、「間違ったユーザー/パス」が表示されますが、プロセスが終了せず、リダイレクトされます...

プロバイダースクリプト:https ://gist.github.com/1072612 コンシューマースクリプト:https ://gist.github.com/1072613

4

1 に答える 1

0

入力した ID URL が間違っている可能性があります。

たとえば、プロバイダーが provider.example.org にあるとします。

間違った ID はhttp://provider.example.org/example-mysql.php. プロバイダーは、ログインとパスワードを要求し、承認を要求しますが、ログインhttp://provider.example.org/example-mysql.phpに解決できないため、黙って失敗します。

http://provider.example.org/example-mysql.php?Mewpは、この例の正しい ID です。

これを回避する 1 つの方法$op->select_id = trueは、URL にログインがない場合に設定することです。これにより、サーバーは claim_id と ID の両方を正しい URL に返します (Google のように)。

于 2011-07-09T23:36:51.587 に答える