PHPSESSID从B域到A域使用Chrome和Firefox,而不是在Safari和IE


PHPSESSID from B domain to A domain using on Chrome and Firefox, not on Safari and IE

从A域,我使ajax/json请求到B域。A域包含jQuery + JS脚本,B域包含PHP文件。

有一种奇怪的行为,我不明白为什么。该脚本运行完美的Chrome + Firefox,而不是在Safari和IE。他们都有同样的问题。chrome + ff返回特定json的时间,其他两个不。

我需要一个快速和肮脏的修复,幸运的是,我发现,如果我在a域,并访问B和回到a,一切工作!正如我注意到的,在a中从b中创建了一个php会话。

是否有一种方法可能与ajax调用设置一个php会话到a与B的域?谢谢你!

您可以使用mozilla persona或任何誓言系统。有几个库可以解决这个问题。我已经用过这个库了:https://github.com/authbucket/oauth2-symfony-bundle但是我实际上不能分享代码,因为它属于我的公司,但是文档帮助很大:)