我正在另一个域(DOMAIN A)的iFrame内运行PHP脚本(在DOMAIN B上)。当用户进入站点时,将执行检查以查看他们是否具有正确的浏览器设置(启用了cookie和启用了第三方cookie-但是在各种浏览器中都被调用)。
[为此,我从iFrame(DOMAIN B)设置了一个会话cookie $_SESSION['COOKIE_CHECK'] = 'passed';
,重定向到DOMAIN B(header('Location: ...
)上iFrame中的另一个脚本,并检查cookie是否仍然存在。如果不是,则显示错误消息,否则用户将再次重定向到主脚本(也在DOMAIN B上)。
我确保会话在所有脚本中都以session_start();
作为第一行代码而处于活动状态。标头重定向使用与原始脚本相同的目标(子)域。
到目前为止,这在所有浏览器(IE,FF,Safari,Chrome)上都运行良好。随着Safari最新版本更新至13.0.4,此功能不再在Safari中起作用。它仍然可以在其他浏览器中使用。
我尝试了一些操作,包括将父文档重定向到DOMAIN B上的cookie检查脚本,然后再次返回。什么都没用。
任何见识将不胜感激!
[致以谢意,谢谢!汤姆
[似乎在Safari 13.0.4和cookie / iframe中存在错误:https://bugs.webkit.org/show_bug.cgi?id=206643