我在同一台服务器上有2个域名,但想用session变量传递一些数据如何做到这一点?PHP在不同域名之间传递会话数据
1
A
回答
2
你可以做这样的事情:
$name = session_name("name");
session_set_cookie_params(0, '/', 'domain.com');
session_start();
更多信息,请参见session_set_cookie_params
。
2
假设你的意思域是something.com
和someothersite.com
,然后配置两个网站使用相同的目录为自己的会话文件,然后就在会话ID钉到站点之间的联系(/tmp
):
http://something.com?sessionID=session_id_from_someothersite.com
http://someothersite.com?sessionID=session_id_from_something.com
然后在每次检查该参数时加载会话处理代码并加载它。
但是,以纯文本URL传递会话ID非常不安全。这就是会话固定攻击变得微不足道的原因。稍微更安全的方法是在每台服务器上使用POST表单以“登录”其他域并将会话ID作为参数传递。或者更好的是,传递加密的一次性使用令牌而不是会话ID。
如果你为他们服务作为同父域(siteA.example.com
和siteB.example.com
)的单独的子域,只需配置都设置在example.com
他们的会话cookie,它会在两个站点之间共享。
相关问题
- 1. 直接在不同的会话之间传递数据。可能?
- 2. 如何在不同区域之间传递时间数据?
- 3. 域名 - >子域名 - 传递会话数据
- 4. 在两个不同的应用程序之间传递会话数据
- 5. 在PHP文件之间传递数据
- 6. 在ASP.NET应用程序之间传递会话数据
- 7. ASP.NET在多个页面之间传递数据会话
- 8. 在域名和子域名之间分享会话
- 9. 领域数据不在会话之间持续
- 10. 在PHP和ASP.Net之间传递会话或认证状态
- 11. 在MFC程序中,如何在不同的对话框之间传递数据?
- 12. 为什么我不能在子域之间传递用户会话?所有的
- 13. 如何在不使用会话的页面之间传递数据MVC
- 14. 在不同域上的脚本之间传输数据
- 15. 使用会话的php页面之间的数据传输
- 16. PHP MVC - 如何在不同层 - 对象或数组之间传递数据
- 17. 会话不会在选项卡内传递。 PHP会话
- 18. 如何在不同类之间传递数据?
- 19. 在不同的视图控制器之间传递数据
- 20. 在两个不同的故事板之间传递数据
- 21. 如何在不同的UIViewControllers之间传递数据?
- 22. 在不同模块的控制器之间传递数据
- 23. 如何在不同模板之间传递数据
- 24. 不同会话之间的NHibernate数据不一致
- 25. 在不同层之间传递beans
- 26. ViewControllers之间不传递数据
- 27. 在函数之间传递元数据
- 28. 传递PHP会话值
- 29. 在对话框和活动之间传递数据
- 30. 在对话框和面板之间传递数据