gpt4 book ai didi

跨域的 PHP 共享 session

转载 作者:可可西里 更新时间:2023-11-01 13:01:43 24 4
gpt4 key购买 nike

我在 SOF 上看到了一些对此的回答,但其中大部分都与子域的使用有关,其中没有一个对我有用。常见的一种是使用 session.cookie_domain,根据我的理解,它只适用于子域。

我对处理完全不同域(并且包括子域的可能性)的解决方案很感兴趣。不幸的是,项目的最后期限就是这样,时间不在我这边,所以我求助于 SOF 的专业知识和经验。

当前的项目简介是能够登录到当前仅在 session 中存储 user_id 的站点,然后能够在同一服务器环境中的不同域上检索该值.正在从数据库中存储/检索 session 数据,其中 session id 是主键。

我希望找到一个“轻量级”且“易于”实现的解决方案。

该系统使用内部 Model View Controller 设计模式,因此所有请求(包括不同域)都通过单个引导脚本运行。使用域名作为变量,这决定了向用户显示的上下文。

一个看起来确实有潜力的选项是使用隐藏图像并使用 alt 标签设置 user id。我的第一印象表明这立即看起来“太简单了”(如果可能的话)并且充满了安全漏洞。讨论?

我考虑过的另一个选项是使用 IP 和用户代理进行身份验证,但由于共享网络和不断变化的 IP 地址,我再次认为这不是一个可靠的选项。

我考虑过但尚未讨论的第三个选项(也是首选)是使用 htaccess 来欺骗用户,让他们认为在实际上 apache 重定向时他们在不同的域中;类似

www.foo.com/index.php?domain=bar.com&controller=news/categoires/1
但向用户显示为
www.bar.com/news/categories/1

foo.com 表示所有请求都经过的“主站点域”,bar.com 是用户认为他们正在访问的域。 Controller 请求指示所请求的页面和 View 。这可能吗?

还有其他选择吗?优点/缺点?

提前致谢!!!

最佳答案

您是否考虑过使用 session_set_save_handler .您可以将 session 存储在数据库中并从任何域访问它们。

关于跨域的 PHP 共享 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2701678/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com