0

我正在写一本 Flash 杂志。当杂志加载时,它开始为页面获取所有需要的图像。但是,我遇到了一个奇怪的安全问题:S。让我试着解释一下……

这是在服务器上设置所有内容的方式:

mydomain.com/view.html          <--- the main page that embeds /swf/theviewer.swf
mydomain.com/swf/theviewer.swf  <--- the magazine viewer

mydomain.com/img/img01.jpg      <-
mydomain.com/img/img02.jpg      <--
mydomain.com/img/img03.jpg ...  <--- all the images that the mag fetches

该杂志采用“硬”编码,始终从“mydomain.com/img/*”获取图像。

如果我打开浏览器并导航到“http://mydomain.com/view.html”,一切都会顺利进行。

但是,如果我改为转到“http://WWW.mydomain.com/view.html”,查看器会引发安全异常(实际上是 URLLoader 引发的)。

有人可以帮我弄清楚发生了什么吗?

更新:

我已正确设置我的 crossdomain.xml 文件以允许 *.mydomain.com

另外,我将“allowScriptAccess”设置为sameDomain。仍然有同样的问题。

还有一件事,几个正在测试网站的朋友说,当用 Firefox 打开网站时,这不会发生(一切都很好),但是如果我使用 Firefox,就会出现错误。也许这与浏览器自身的安全策略有关。

4

1 回答 1

1

您可能有跨域安全问题。由于域根是相同的,但不包括“www”,因此 SWF(或您的 html/javascript)很可能将其视为不同的域,因为它不是完全匹配的。

这是一篇关于我正在谈论的文章。http://blancer.com/tutorials/30030/quick-tip-a-guide-to-cross-domain-policy-files/

此外,请确保您的“allowScriptAccess”属性设置为“sameDomain”或“always”。这里也有一篇相关的文章.. http://kb2.adobe.com/cps/164/tn_16494.html

于 2010-11-16T22:23:09.887 回答