Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 谷歌突然开始使用LightOpenId将验证返回为false_Php_Openid_Lightopenid - Fatal编程技术网

Php 谷歌突然开始使用LightOpenId将验证返回为false

Php 谷歌突然开始使用LightOpenId将验证返回为false,php,openid,lightopenid,Php,Openid,Lightopenid,使用LightOpenID库,我成功地在我的网站上实现了OpenID。 然而,几天前,当使用谷歌作为提供商时,它只是停止了工作(使用雅虎运行良好!)。 从我实现OpenID的那天起,它就可以使用任何提供程序正常运行。我甚至有一些用户使用他们的谷歌账户登录。然而,奇怪的是,几天前谷歌停止了工作(而其他提供商仍然运行良好),在$openid->validate()上返回false 我使用LightOpenID提供的example-google.php文件进行了测试,没有做任何修改,但我没有成功。我还

使用LightOpenID库,我成功地在我的网站上实现了OpenID。 然而,几天前,当使用谷歌作为提供商时,它只是停止了工作(使用雅虎运行良好!)。 从我实现OpenID的那天起,它就可以使用任何提供程序正常运行。我甚至有一些用户使用他们的谷歌账户登录。然而,奇怪的是,几天前谷歌停止了工作(而其他提供商仍然运行良好),在$openid->validate()上返回false

我使用LightOpenID提供的example-google.php文件进行了测试,没有做任何修改,但我没有成功。我还使用不同的谷歌账户进行了测试,也没有运气。我甚至在不同的网站上进行了测试,但仍然没有成功。请注意,我使用的是共享主机,并且安装了curl,运行的是7.19.7版


谷歌最近有没有对它的系统做过任何改变,而这正是造成这种情况的原因?这个问题还有其他原因吗?

其他人说要启用cURL(这可能是您的问题),但在我的例子中,cURL是启用的

再仔细观察一下,我发现请求正在通过request_streams()进行,因为函数request(为方便起见格式化)中的以下检查失败:

将其更改为:

if (
  function_exists( 'curl_init' ) &&
  (
    !in_array( 'https', stream_get_wrappers() ) ||
    (
      !ini_get( 'safe_mode' ) &&
      !ini_get( 'open_basedir' )
    )
  )
) {
希望这有帮助


编辑:我忘了说我不确定谷歌是否做了一些改变,但事实上,很多人在使用同一个图书馆的同时也有同样的问题,这意味着发生了一些事情,我可以说,大多数人可能没有做任何改变。谷歌可能会轻触一些开关,使某些东西更具限制性/安全性。

向该线程添加更多信息

我对文件流(关于“file\u get\u contents”)也有问题。如上所述,我强制卷曲。 (仅与谷歌有关。雅虎运作良好)


对于我的共享主机,我还必须对“CURLOPT_FOLLOWLOCATION”选项进行注释。

感谢您的回复!但不幸的是,这对我不起作用。我确实启用了cURL(cURL_init()没有问题),这使得这个问题更加令人沮丧。我试图删除此检查并自动使用request_curl(),但没有成功。这很奇怪。这对我有用,所以我想它可能对你有用。对不起,我帮不上忙了。最奇怪的是,在几天前,它对每个人都有效。谷歌你做了什么?--忍者编辑:检查这个问题解决了吗?怎么做到的!
if (
  function_exists( 'curl_init' ) &&
  (
    !in_array( 'https', stream_get_wrappers() ) ||
    (
      !ini_get( 'safe_mode' ) &&
      !ini_get( 'open_basedir' )
    )
  )
) {