我在我的网络服务器上设置了HybridAuth。我有一个基本的html页面,显示谷歌,Facebook或Twitter的3个登录选项。为了在家用电脑上进行测试,我将config.php文件设置为:
"base_url" => "http://my.local.ip.address/hybridauth-2.1.2/hybridauth/index.php",
到目前为止,通过此设置,选择使用Twitter登录选项确实有效,我可以从用户那里获取一些基本的个人资料信息。但是,Facebook会返回以下消息:
尝试使用Google时,会返回以下内容:
- redirect_uri的参数值无效:不允许使用原始IP地址:http://my.local.ip.address/hybridauth-2.1.2/hybridauth/?hauth.done=Google
作为上面的注释,“my.local.ip.address”是我实际的本地IP地址,但我不得不在这里更改它。 但是,当我更改config.php以使其正常使用时:
"base_url" => "http://myFQDN.com/hybridauth-2.1.2/hybridauth/index.php",
然后我接通了我的手机(不在我的本地网络上),它只是重新加载基本html页面,无论我选择什么选项。
任何帮助或建议都会很棒。
注意:端口80被我的ISP阻止,因此,我将它从我的注册器重定向到另一个端口,然后在我的路由器内转发。如果这是可能的问题,请告诉我。 - 此外,当我只是制作一个标准的.html页面时,一切正常。
由于
答案 0 :(得分:0)
我认为大多数OAuth2提供商都不会接受来自配置的回调网址的答案。因此,使用寄存器进行重定向很可能会失败。
相反,尝试将回调配置为:
http://www.yourdomain.com:openPort/hybridauth-2.1.2/hybridauth/index.php
openPort 是您的ISP不会阻止的端口号。 然后在路由器中,您可以进行端口转发 openPort-&gt; 80 ,或者您可以将您的网络服务器启动到 openPort ,并确保路由器没有阻止请求。< / p>