【发布时间】:2010-10-22 18:03:21
【问题描述】:
Coles Notes 版本:
index.php?map_id=foo 被加载到 www.not-my-domain.com 上的 iframe。索引集SESSION['map_id'] = foo。 Flash 文件尝试通过 Authenticate.php 获取 SESSION['map_id'],但 Authenticate.php 没有为 any SESSION 变量设置值。
-- 仅限首次加载,跨域问题。
详细:
我在设置时有一个索引:SESSION['map_id'] = foo
然后索引文件加载一个闪存文件。初始化时,闪存访问一个“Authenticate.php”文件,该文件回显SESSION['map_id'],并通过LoadVars 加载到闪存中。 Flash 然后显示适当的数据。
此步骤不能以其他方式完成
这一切都可以在我们的主站点上正常运行。当我们尝试通过提供 iframe 嵌入代码来移植到其他网站时,就会出现问题:
<iframe src="http://www.mydomain.com/?map_id=foo&code=bar" ... ></iframe>
在从另一个站点 (www.anotherdomain.com) 重新加载嵌入代码时,SESSION 变量似乎已被破坏,因为 flash 只是说它们是空的。 ($map_id 输出空白)
索引文件仍会正确地将$map_id 回显为“foo”,只是似乎“Authenticate.php”文件无法访问SESSION 变量。
我已确保 session_start() 出现在所有适当的文件中。
【问题讨论】:
标签: php iframe cross-domain session-variables