CSS @font-face URL absolue de domaine externe: polices qui ne sont pas en cours de chargement dans firefox
http://friends-with-you.myshopify.com/
J'ai mes polices et css hébergé sur un pagodabox.com serveur, et je suis le développement de la section sur shopify. Je veux utiliser la même feuille de style à partir de la pagodabox site hébergé pour la shopify site. Mais mes polices de caractères ne s'affichent pas dans le navigateur firefox, la version 13.0.1
Est-il un problème avec FF ou avec ma syntaxe? Merci!!!
@font-face {
font-family:'IcoMoon';
src:url('http://fwy.pagodabox.com/magic/themes/fwy/assets/fonts/IcoMoon.eot');
src:url('http://fwy.pagodabox.com/magic/themes/fwy/assets/fonts/IcoMoon.eot?#iefix') format('embedded-opentype'), url('http://fwy.pagodabox.com/magic/themes/fwy/assets/fonts/IcoMoon.svg#IcoMoon') format('svg'), url('http://fwy.pagodabox.com/magic/themes/fwy/assets/fonts/IcoMoon.woff') format('woff'), url('http://fwy.pagodabox.com/magic/themes/fwy/assets/fonts/IcoMoon.ttf') format('truetype');
font-weight:normal;
font-style:normal;
}
@font-face {
font-family:'square';
src:url('http://fwy.pagodabox.com/magic/themes/fwy/assets/fonts/SquareSerif-Light-webfont.eot');
src:url('http://fwy.pagodabox.com/magic/themes/fwy/assets/fonts/SquareSerif-Light-webfont.eot?#iefix') format('embedded-opentype'), url('http://fwy.pagodabox.com/magic/themes/fwy/assets/fonts/SquareSerif-Light-webfont.woff') format('woff'), url('http://fwy.pagodabox.com/magic/themes/fwy/assets/fonts/SquareSerif-Light-webfont.ttf') format('truetype'), url('http://fwy.pagodabox.com/magic/themes/fwy/assets/fonts/SquareSerif-Light-webfont.svg#SquareSerifLightRegular') format('svg');
font-weight:normal;
font-style:normal;
}
OriginalL'auteur j-man86 | 2012-07-23
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas utiliser @font-face dans Firefox avec une police hébergé sur un domaine différent
Si vous souhaitez spécifier une police de @font-face en utilisant une URL absolue, ou une police hébergé sur un domaine différent, il doit être servi avec le Contrôle d'Accès des en-Têtes, plus précisément le Access-Control-Allow-Origin-tête défini à '*' ou les domaines autorisés à demander à la police. Ceci s'applique également aux polices hébergé sur un sous-domaine différent. Si vous utilisez Apache, vous pouvez essayer de mettre cela dans votre .htaccess et redémarrez le serveur
Suivez ces instructions, dans le cas où vous voulez appliquer la même solution sur nginx: serverfault.com/questions/162429/...
"Vous ne pouvez pas utiliser @font-face dans Firefox avec une police hébergé sur un autre domaine". Pourquoi faire des polices proposées par Google Polices de travail sous firefox, alors? Ne fait que suggérer qu'il y a un travail autour d'autres que reconfigging le serveur?
Oh, je geddit. Sans doute Google ont la
Access-Control-Allow-Origin
mis en place dans leur serveur... Mais alors quel est le point de Ffox interdisant aux étrangers Url si l'hôte étranger peut également le remplacer. confondre de nouveau!imaginez toutes les internets à l'aide de la police sur votre serveur vous faire payer pour des ressources et de la bande passante.. [ √ ] bloqué [ √ ] sauf si vous le souhaitez
OriginalL'auteur Victor Ribeiro da Silva Eloy
C'est une limitation connue et est en fait une mesure de sécurité afin de prévenir les abus à d'autres serveurs.
Si vous avez au niveau du serveur de contrôle du serveur les polices sont hébergés sur, vous pouvez modifier Apache pour permettre à ces types de connexions. Plus d'infos sur: http://www.cssbakery.com/2010/07/fixing-firefox-font-face-cross-domain_25.html
Mais sachez que si vous faites cela, cela permettrait à tous les autres sites à utiliser ces polices sur leurs sites et l'utilisation de votre bande passante.
OriginalL'auteur Ben Dyer
Si vous avez accès à un serveur distant, vous pouvez ajouter un script local pour définir le bon en-têtes, comme
header('Access-Control-Allow-Origin: *');
et vider le fichier de police. Par exemple, en PHP, comme ceci:(fichier fnt.php dans le même dossier des polices)
Ensuite, vous pouvez utiliser les polices de caractères comme ceci:
spécifiant le fichier php à la place du fichier de police, et de passer le fichier de police de caractères comme argument
?f=fontfile.woff
. Si vous voulez garder la FONT_FOLDER paramètre pour pointer vers le bon dossier. Le preg_replace si, pour la sécurité, la prévention de l'accès à l'extérieur du dossier de police.Vous pouvez également soutenir une certaine forme d'authentification pour être sûr que vous êtes en utilisant ces polices.
Vous pouvez également envisager l'utilisation de certains Access-Control-Allow-Origin autre que '*' pour spécifier exactement qui peut accéder à vos fichiers de police.
permettra l'accès de serveur http://www.fromthisserverican.com, ce qui signifie que toutes les pages http://www.fromthisserverican.com peut utiliser les polices de caractères, tandis que des pages sur d'autres serveurs peuvent pas.
OriginalL'auteur FrancescoMM
Vous pouvez vous permettre de ressources pour être chargés à partir de sous-domaine en ajoutant la ligne suivante à votre .fichier htaccess
Charger des ressources sous-domaine:
Charger les ressources de tous les autres domaines:
Source: http://www.webspeaks.in/2015/01/wordpress-allow-cross-domain-resources.html
OriginalL'auteur Arvind Bhardwaj
Cela m'a aidé à résoudre le problème.
OriginalL'auteur user5217969