php - 从其他网站重定向时缺少 session 变量

标签 php session oauth

我使用 OAuth 在外部网站进行身份验证。一切正常,但从外部网站重定向后 session 变量丢失。

总结: 我在我的网站上存储了一个 session 变量,然后转到其他网站的登录页面。登录并确认后,它重定向到我的回调,当我检查以前的 session 变量时,它错过了!如何解决?

我尝试在使用 session 的任何地方调用 session_start(),但它不起作用。当然,我在“php.ini”中启用了 session 并在浏览器中启用了 cookie。 :) 我调试了,但找不到原因。

enter image description here

更新: 存储我的 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/

相关文章:

mysql - mysql 和 php 中的 session

PHP fatal error : Invalid serialization data for DateTime object at session_start()

php - 如何使用具有动态值的变量更新sql表

php - 我如何知道哪个页面为我服务?

php - MSBuild 复制特定文件和文件夹

java - Struts2: session 问题(反向代理后)

oauth - 无法通过 OAuth 对 Bitbucket API 进行经过身份验证的调用

javascript - 我可以将用户帐户与驱动器 API 的操作关联起来吗?

oauth - Bitbucket OAuth 返回 "Could not verify OAuth request."

php - 我如何知道 url 编码的字符串是 UTF-8 还是 Latin-1 与 PHP?