Ich habe diese Regeln hinzugefügt zu mime.types
:
application/x-font-ttf ttf;
font/opentype otf;
application/vnd.ms-fontobject eot;
font/x-woff woff;
Jetzt wird der Content-Type-Header für jeden von ihnen richtig eingestellt. Mein einziges Problem ist jetzt, dass Firefox Access-Control-Allow-Origin benötigt. Ich habe diese Antwort gegoogelt und diese meiner Server-Direktive hinzugefügt:
location ~* \.(eot|ttf|woff)$ {
add_header Access-Control-Allow-Origin *;
}
aber jetzt werden meine Schriften überhaupt nicht mehr geliefert.
Stattdessen wird error.log
gemeldet, dass versucht wird, sie im lokalen Dateisystem zu öffnen.
2010/10/02 22:20:21 [Fehler] 1641 # 0: * 15 open () "/usr/local/nginx/html/fonts/mgopenmodernabold-webfont.woff" fehlgeschlagen (2: Keine solche Datei oder solches Verzeichnis) , Client: 69.164.216.142, Server: static.arounds.org, Anforderung: "HEAD /fonts/mgopenmodernabold-webfont.woff HTTP / 1.1", Host: "static.arounds.org"
Irgendwelche Ideen, was an der Syntax dran sein könnte? Muss ich explizit eine Regel hinzufügen, die besagt, dass nicht versucht wird, sie lokal zu öffnen, oder was?
EDIT : Ich denke, das Problem ist, dass ich jetzt 2 verschiedene Standorte bediene. Und stattdessen sollte ich den Regex-Check innerhalb des Hauptfensters durchführen und dann den Header füttern.
quelle
Antworten:
Woot! Verstanden. Es war ziemlich genau das, was ich in meiner Bearbeitung vermutet hatte. Ich musste im Grunde die Überprüfung der regulären Dateinamen in meiner Sohle durchführen,
location {}
anstatt eine alternative zu erstellen .quelle
quelle
Alle Vermögenswerte
Dadurch funktionieren alle Assets einwandfrei. Sie können hinzufügen,
root
ob Sie einen neuen Standort definieren möchtenquelle
Eine andere Lösung: Geben Sie beispielsweise alle Ihre Schriftarten ein
static/fonts
und fügen Sie sie hinzuquelle