2012-03-29 72 views
3

我有一個託管在Tumblr上的博客。我有一個單獨的主機,用於存儲我製作的主題的所有圖像,js,css等。但是,我也使用QueryLoader2以某種方式爲博客添加了「預加載器」(也就是說,頁面將只顯示加載欄,直到所有內容都已加載)。jdo的crossdomain.xml?

問題是,我遇到了Access-Control-Allow-Origin問題,因爲圖像和資源位於不同的域。在使用Flash之前,我記得我可以在遠程服務器上定義一個crossdomain.xml,以便某些域能夠訪問它。但是,這僅適用於Flash。那麼,是否有JavaScript的crossdomain.xml對應物(或者,因爲這是我使用的框架,jQuery)?

它需要能夠與QueryLoader2工作 - >http://www.gayadesign.com/diy/queryloader2-preload-your-images-with-ease/

回答

5

遠程服務器必須與Access-Control-Allow-Origin: * HTTP標頭響應,要使用JavaScript能夠訪問這些文件。如果你沒有預處理PHP(或任何其他服務器端語言)的響應,則必須設置Web服務器來添加該標題。否則,您可以將其添加到腳本中。

如果Apache Web服務器使用,它使mod_headers,您可以在.htaccess

<filesMatch "\.(jpg|png|gif)$"> 
    <ifModule mod_headers.c> 
     Header set Access-Control-Allow-Origin "*" 
    </ifModule> 
</filesMatch> 
+0

做到這一點是該做的,能夠通過的.htaccess?我擔心我的主機沒有足夠的權利來編輯PHP.ini。由於它只是引用圖像,所以我不想經歷創建用於訪問圖像的代理PHP文件的麻煩。 – Propeller 2012-03-29 11:20:00

+0

@ShedSurashu查看我的更新回答 – 2012-03-29 11:49:10

+0

完美無瑕地工作。 :) – Propeller 2012-03-29 16:22:26