Cookies 无法在Safari 13中的测试子域之间共享cookie

Cookies 无法在Safari 13中的测试子域之间共享cookie,cookies,safari,cross-domain,Cookies,Safari,Cross Domain,我有apache for& 当浏览cookie时,将其设置为基本域“.example.test”using php“session.cookie\u domain”。这在Chrome、Firefox或Safari版本12之前的版本中都可以使用。 但是,它在Safari 13(iOS 13或Catalina)中不再起作用 更奇怪的是,在Safari 13上,我的生产机器为& 我对COM和测试服务器都有相同的apache服务器配置。在将我的iOS设备更新到iOS 13或在Catalina之后的Mac

我有apache for&

当浏览cookie时,将其设置为基本域“.example.test”using php“session.cookie\u domain”。这在Chrome、Firefox或Safari版本12之前的版本中都可以使用。 但是,它在Safari 13(iOS 13或Catalina)中不再起作用

更奇怪的是,在Safari 13上,我的生产机器为&

我对COM和测试服务器都有相同的apache服务器配置。在将我的iOS设备更新到iOS 13或在Catalina之后的MacOS中,它只是停止了开发“.test”服务器。Chrome、Firefox仍然可以使用。即使是连接到我的开发机器的旧iOS设备(通过代理)仍然将cookie存储到基本域“.example.test”。所以它看起来像是Safari 13特有的东西,并且只在“.test”域中

我已经使用苹果公司的最新建议(最多825天等)为我的.TEST服务器创建了新的证书,但没有任何区别。自签名证书似乎发生了一些变化。或者可能存在“.test”(非公共)域的新规则?它是Safari特有的,“.test”不是公共域或证书。或者其他我根本没想到的事情


你知道如何配置Apache/Macosx/certificates,以便我仍然可以在development.TestDomains中使用Safari 13跨子域共享cookie吗?谢谢。

这不是证书的问题,但Safari解析
.test
TLD的方式似乎有所不同

我们通过为每个需要的子域显式设置cookie来解决这个问题。在我们的Rails应用程序中,在开发环境中,我们将会话存储设置为:

config.session\u存储(
:活动记录存储,
键:“我们的应用程序会话”,
域:['ourapp.test','api.ourapp.test','help.ourapp.test']
)

如果您能够找到在后端执行相同操作的方法,那么您应该能够对不同的
.test
子域使用相同的cookie。

这里同样适用于通配符子域和
.test
tld的cookie。它在Chrome中工作,但Safari 13不设置cookie

我的解决方法是使用
.local
子域,一切正常


(将每个子域指定为@gueorgui suggered不会按预期工作,因为浏览器将为每个子域设置单独的cookie)

我也看到了
.test
tld的子域和cookie出现此问题。很高兴我不是唯一一个出现此问题的人。这困扰了我好几个星期……我已经通过苹果的反馈助手向Safari团队提交了以下内容: