我继承了一个完全用Flash构建的网站,主swf是4.5MB大(哎哟!)。正如您可能猜到的那样,这给我的客户带来了大量的托管费用。为了解决这个问题,我想将这个单片swf移动到Amazon S3,但这会导致安全问题。
这就是当前加载bigt swf的方式; loader.swf
上的mydomain.com
正在加载来自s3.amazonaws.com
的大型swf。但是,这有效,大型swf反过来从mydomain.com
加载资产。我希望,因为loader.swf
(在我的域上)正在加载大型swf,所以大型swf将存在于loader.swf
的上下文中。
我已经尝试在两个swf指向其他域的域中放置一个Security.allowDomain,但这似乎无法解决问题。我目前要解决的错误是:
-- Remote SWFs may not access local files.
SecurityError: Error #2148: SWF file https://s3.amazonaws.com/static.mydomain.com/verylarge.swf cannot access local resource
非常感谢任何解决此问题的帮助。
答案 0 :(得分:0)
您可能需要在S3上使用跨域政策文件,允许从您的域访问
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM
"http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<site-control permitted-cross-domain-policies="master-only"/>
<allow-access-from domain="yourdomain.com"/>
<allow-access-from domain="s3.amazonaws.com/static.mydomain.com"/>
</cross-domain-policy>