||  網站導覽  ||  留言版
 
  站長 x 管理人
 
  文章分類
    JAVA
    Database資料庫
    應用程式
    文書處理
    normal一般設定
    Web-design網頁設計
       JSP
       不分類
       .net framework
       asp
       php
    Virtual Machine虛擬機器
    MIS網管
    media多媒體
    未分類
 
 
 
 
flash-圖片輪播無法跨網域
 
 
 
 
話說過年期間還收到客戶來信,是蠻無言的

不過客戶提出一個問題,他瀏覽網站時,
flash輪播有時會出現圖片,有時看不到

追問之下,客戶說
瀏覽abc.com.tw=>ok
瀏覽www.abc.com.tw=>不ok

查了一下,原來這個網站的flash輪播檔是用絕對路徑表示
exp:http://abc.com.tw/xxx/flash.swf

所以在http://www.abc.com.tw下就會失敗,
用firebug看的時候,
發現他會一直去找一個crossdomain.xml,
flash.swf->crossdomain.xml 404 not found->結束
當然這個檔案是不存在的


爬文之後,發現了這個檔案的用處

只要建立一個crossdomain.xml
內容如下
<?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="www.abc.com.tw" secure="true" />
</cross-domain-policy>


<cross-domain-policy>
          <allow-access-from domain="*.abc.com.tw" />
          <allow-access-from domain="abc.com.tw"  />
</cross-domain-policy>

放在網站根目錄之下


搞定

這時以firebug觀察的情況如下
順序如下:flash.swf->crossdomain.xml->圖片01.jpg...圖片02.jpg...->結束

雖然把flash的路徑改掉就可以了,不過相較之下,這個方法比較快
 
 
 
 
Copyright © 2012 NBOX. All Rights Reserved.