web-dev-qa-db-fra.com

Blocage du chargement des polices par la stratégie de partage de ressources d'origine croisée: Non 'Accès-Contrôle-Autoriser-Origine'

nous rencontrons cette erreur dans Google Chrome. Nous avons pensé que tout était correctement configuré. Mais peut-être pas?

Le chargement de la police d'origine http://skin.cdn.com a été bloqué par la stratégie de partage de ressources d'origine croisée: aucun en-tête 'Accès-Contrôle-Autoriser-Origine' n'est présent sur la ressource demandée. L'origine http://domain2.com n'est donc pas autorisée.

Et nous avons ce qui suit dans htaccess (à la racine du domaine).

<IfModule mod_headers.c>    
Header add Access-Control-Allow-Origin "http://skin.cdn.com" 
</IfModule>

Question: Ai-je oublié d'autres paramètres?

merci beaucoup

15
snh_nl

Changez le code de votre fichier htaccess dans le répertoire racine de votre site Web (c’est-à-dire votre fichier ".htaccess" public_html).

<FilesMatch "\.(ttf|otf|eot|woff|woff2)$">
    <IfModule mod_headers.c>
        Header set Access-Control-Allow-Origin "http://skin.cdn.com"
    </IfModule>
</FilesMatch>

Maintenant, votre CDN sera autorisé à charger votre ressource en l’appelant comme une ressource passagère (les polices).

CAVEAT: Vous devez PURGER TOUT dans votre CDN pour que les fichiers soient mis à jour dans quelques minutes.

17
Prashant Tapase

Je n'ai pas assez de réputation pour commenter la réponse de @Prashant Tapase, mais votre répertoire racine n'est pas Your Public_html. Ceci est un sous-répertoire de votre répertoire racine. & d'après les réponses que j'ai recherchées La directive FileMatch devrait être à l'intérieur du IfModule Comme indiqué ci-dessous

<IfModule mod_headers.c>
    <FilesMatch "\.(eot|otf|ttc|ttf|woff|woff2)$">
        Header set Access-Control-Allow-Origin "*"
    </FilesMatch>
</IfModule>

S'il vous plaît corrigez-moi si c'est faux.
Ou vous pouvez spécifier des URL/URI spécifiques de polices comme il l’a mentionné.

De plus, s'il s'agit d'un CDN, utilisez si possible la version https et non http.

0
Ryan Stone