2012-03-29 2 views
3

J'ai un blog hébergé sur Tumblr. J'ai un hôte séparé où je stocke toutes les images, js, css, etc pour le thème que j'ai fait. Cependant, j'utilise aussi QueryLoader2 pour ajouter en quelque sorte un "préchargeur" ​​pour le blog (la page affichera seulement une barre de chargement jusqu'à ce que tout soit chargé).crossdomain.xml pour jQuery?

Le problème est, je cours à travers Access-Control-Allow-Origin problèmes puisque les images et les ressources sont sur un domaine différent. Ayant de l'expérience avec flash avant, je me souviens qu'il y a un crossdomain.xml que je peux définir sur le serveur distant pour que certains domaines puissent y accéder. Mais, ceci est seulement pour Flash. Y a-t-il une contrepartie crossdomain.xml pour JavaScript (ou jQuery puisque c'est le framework que j'utilise)?

Il doit être en mesure de travailler avec QueryLoader2 ->http://www.gayadesign.com/diy/queryloader2-preload-your-images-with-ease/

Répondre

5

Le serveur distant doivent répondre avec Access-Control-Allow-Origin: * en-tête HTTP, pour JavaScript afin de pouvoir accéder aux fichiers. Si vous ne prétraitez pas la réponse en PHP (ou tout autre langage côté serveur), vous devez configurer le serveur Web pour ajouter cet en-tête. Sinon, vous pouvez l'ajouter dans le script.

Si le serveur web apache est utilisé, et il a mod_headers activé, vous pouvez le faire dans .htaccess

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

Est-ce faisable via .htaccess? Je crains de ne pas avoir les droits suffisants sur mon hébergement pour faire des modifications à PHP.ini. Et comme je ne fais que référencer des images, je ne voudrais pas perdre la peine de créer un fichier PHP proxy pour accéder aux images. – Propeller

+0

@ShedoSurashu voir ma réponse mise à jour –

+0

A travaillé sans faille. :) – Propeller

Questions connexes