193 votes

Htaccess Access-Control-Allow-Origin

Je suis en train de créer un script qui se charge de manière externe sur d'autres sites. Il charge du CSS et du HTML et fonctionne correctement sur mes propres serveurs.

Cependant, lorsque j'essaie de l'utiliser sur un autre site, il affiche cette terrible erreur:

Access-Control-Allow-Origin

Ici, vous pouvez le voir charger parfaitement: http://tzook.info/bot/

Mais sur ce autre site, il affiche l'erreur: http://cantloseweight.co/robot/

J'ai téléchargé le script de chargement sur jsfiddle: http://jsfiddle.net/TL5LK/

J'ai essayé de modifier le fichier htaccess comme ceci:

    Header set Access-Control-Allow-Origin *

Ou comme ceci:

Header set Access-Control-Allow-Origin *

Mais cela ne fonctionne toujours pas.

10voto

shongololo Points 2009

Les autres réponses n'ont pas fonctionné pour moi, voici ce que j'ai fini par faire pour apache2 :

1) Activer le module headers :

sudo a2enmod headers

2) Créer le fichier /etc/apache2/mods-enabled/headers.conf et insérer :

    Header set Access-Control-Allow-Origin "*"

3) Redémarrez votre serveur :

sudo service apache2 restart

9voto

Saman Shafigh Points 1573

BTW: la configuration .htaccess doit être effectuée sur le serveur hébergeant l'API. Par exemple, si vous créez une application AngularJS sur le domaine x.com et créez une API Rest sur y.com, vous devriez définir Access-Control-Allow-Origin "*" dans le fichier .htaccess situé dans le dossier racine de y.com et non de x.com :)

    Header set Access-Control-Allow-Origin "*"

Comme Lukas l'a mentionné, assurez-vous d'avoir activé mod_headers si vous utilisez Apache

3voto

JDavis Points 1366

Assurez-vous qu'il n'y a pas de redirection en cours. Cela peut se produire si vous n'incluez pas le slash final dans l'URL.

Voir cette réponse pour plus de détails - https://stackoverflow.com/a/27872891/614524

0voto

Hans Ganteng Points 31

Si votre hôte n'est pas sur un serveur privé virtuel ou dédié, il est difficile de redémarrer le serveur.

Meilleure solution de ma part, il suffit de modifier votre fichier CSS (sur un autre domaine ou votre sous-domaine) qui appelle la police eot, woff, etc. vers votre origine (votre domaine ou www votredomaine). Cela résoudra votre problème.

Je veux dire, modifier l'URL relative sur le CSS en URL absolue domaine d'origine

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X