0

我在我的机器上的 localhost 虚拟主机上运行了 example-mysql.php LightOpenID 提供程序脚本。我更新了表名和 mysql_connect() 参数以在我的本地机器上工作。我还在用户表中创建了一个用户。

我正在使用 example.php LightOpenID 消费者脚本来测试提供者脚本。一切正常,直到我到达“http://site1”想要访问、允许一次、始终允许、取消。按下任一允许按钮会创建一个新的 allowedsites 行,但页面会再次使用按钮刷新。它会验证我对数据库的登录,否则我会得到“错误的用户/密码”,但永远不会完成该过程并重定向我......

提供者脚本:https ://gist.github.com/1072612 消费者脚本:https ://gist.github.com/1072613

4

1 回答 1

0

您可能输入了错误的身份 URL。

例如,假设提供者在 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将是此示例的正确身份。

避免这种情况的一种方法是$op->select_id = true在 url 中没有登录时进行设置,这将导致服务器将 claim_id 和 identity 返回到正确的 url(就像 google 一样)。

于 2011-07-09T23:36:51.587 回答