我使用 OAuth 在外部网站进行身份验证。一切正常,但从外部网站重定向后 session 变量丢失。
总结: 我在我的网站上存储了一个 session 变量,然后转到其他网站的登录页面。登录并确认后,它重定向到我的回调,当我检查以前的 session 变量时,它错过了!如何解决?
我尝试在使用 session 的任何地方调用 session_start(),但它不起作用。当然,我在“php.ini”中启用了 session 并在浏览器中启用了 cookie。 :) 我调试了,但找不到原因。
更新: 存储我的 session 变量后,我会发出这样的请求: http://mixi.jp/connect_authorize.pl?oauth_callback=http%3A%2F%2Fmypage.com%2Fcallback.php&oauth_token=fjdklsfjlksd
注意 oauth_callback,它是重定向 URL。我不知道 mixi.jp 使用什么重定向。
最佳答案
确保您网站的域在重定向前后 100% 相同。
注意
www.yoursite.com
和
yoursite.com
是两个不同的 cookie 站点。
关于php - 从其他网站重定向时缺少 session 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8366780/