Das Laden der Schriftart wurde durch die Cross-Origin-Richtlinie zur gemeinsamen Nutzung von Ressourcen blockiert: Kein "Zugriffskontrolle-Erlauben-Origin"


16

Bei Google Chrome tritt dieser Fehler auf. Wir dachten, dass alles richtig eingestellt war. Aber vielleicht auch nicht?

Das http://skin.cdn.comLaden von Zeichensätzen aus dem Ursprung wurde durch die Richtlinie zur gemeinsamen Nutzung von Ursprungsressourcen blockiert: In der angeforderten Ressource ist kein Header "Zugriffskontrolle - Zulassen - Ursprung" vorhanden. Origin http://domain2.comist daher kein Zugriff gestattet.

Und wir haben die folgenden in htaccess (im Stammverzeichnis der Domäne).

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

Frage: habe ich andere Einstellungen vergessen?

Danke vielmals

Antworten:


17

Ändern Sie den Code Ihrer htaccess-Datei im Stammverzeichnis Ihrer Website (z. B. Ihre public_html-Datei ".htaccess").

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

Jetzt kann Ihr CDN Ihre Ressource laden, indem Sie sie als übergebende Ressource (die Schriftarten) aufrufen.

CAVEAT: Sie müssen ALLES in Ihrem CDN GELÖSCHEN, damit die Dateien in wenigen Minuten aktualisiert werden.


1
Ihre Antwort hat für mich einwandfrei funktioniert, aber kann ich fragen, warum Sie sich für die Platzhalter entschieden haben, anstatt sie auf bestimmte Ursprünge zu beschränken?
— Abraham

Diese Methode funktioniert noch.
— Rahul

0

Ich habe nicht genug Reputation, um die Antwort von @Prashant Tapase zu kommentieren, aber Ihr Stammverzeichnis ist nicht Ihr Public_html. Dies ist ein Unterverzeichnis Ihres Stammverzeichnisses. & aus den Antworten, die ich recherchiert habe Die FileMatch-Direktive sollte sich im IfModule befinden, wie unten gezeigt

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

Bitte korrigieren Sie mich, wenn dies falsch ist.
Oder Sie können bestimmte URLs / URIs von Schriftarten angeben, die er erwähnt hat.

Wenn es sich um eine CDN handelt, sollten Sie nach Möglichkeit die https-Version und nicht http verwenden.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.