有一个灵活的应用程序工作从多个域& https remoting

时间:2012-05-21 17:58:54

标签: flex apache dns crossdomain.xml

我有一台Apache服务器,可以为两个虚拟主机https://www.domain01.comhttps://www.domain02.com提供服务。配置Apache以使domain01和domain02的“Document Root”与服务器上的目录相同。因此,在此配置中,这两个域都提供相同的网站和SAME flex app .swf文件。

此Flex应用程序预先通过https远程处理来访问https://www.domain01.com中的数据。

https://www.domain01.com加载应用时,该应用的远程处理功能运行良好。但是,从https://www.domain02.com加载应用时,应用的远程处理功能会失败。

我有一个跨域文件,它显示在本文末尾。

当从domain01或domain02加载应用程序时,如何让远程处理始终有效?

<?xml version="1.0"?>`  
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">`  
<cross-domain-policy>`  
<allow-access-from domain="*" secure="false"/>`  
<allow-http-request-headers-from domain="*" headers="*" secure="false" />`  
</cross-domain-policy>`  

1 个答案:

答案 0 :(得分:0)

我明白了。我有远程服务调用domain01.com,我将以下代码添加到我的flex应用程序

Security.allowDomain( "www.domain02.com" );  
Security.loadPolicyFile( "domain02.com/crossdomain.xml" );    
var request:URLRequest = new URLRequest( "domain02.com/crossdomain.xml" );  
var loader:URLLoader = new URLLoader(); 
loader.load( request );