Tipo MIME corretto per i caratteri .woff2


279

Oggi ho aggiornato il pacchetto Font Awesome alla 4.3.0 e ho notato che è stato aggiunto il carattere woff2 . Quel file è collegato in CSS, quindi devo configurare nginx per servire correttamente i file woff2.

Attualmente ho questo blocco in nginx config per i caratteri:

location ~* \.(otf|eot|woff|ttf)$ {
    types     {font/opentype otf;}
    types     {application/vnd.ms-fontobject eot;}
    types     {font/truetype ttf;}
    types     {application/font-woff woff;}
}

Qual è il tipo mime corretto per i caratteri woff2?


1
Ecco come memorizzare nella cache i file woff2 in Apache: <IfModule mod_mime.c> AddType font/woff2 woff2e <IfModule mod_expires.c> ExpiresActive On ExpiresByType font/woff2 "access plus 1 month". (Tag di chiusura e newline omessi.)
Chloe,

Risposte:


437

In IIS è possibile dichiarare il tipo mime per i file di caratteri WOFF2 aggiungendo quanto segue al web.config del progetto:

<system.webServer>
  <staticContent>
    <remove fileExtension=".woff2" />
    <mimeMap fileExtension=".woff2" mimeType="font/woff2" />
  </staticContent>
</system.webServer>

Aggiornamento : il tipo MIME potrebbe cambiare in base alle ultime specifiche WOFF2 del Draft dell'Editor W3C . Vedere l' appendice A: Registrazione del tipo di supporto Internet sezione 6.5. WOFF 2.0 che indica l'ultimo formato proposto èfont/woff2


6
Ora i tipi MIME in IIS 10 supportavano .woff2. Con IIS 10 non è necessario modificare nulla in web.config.
Kevin,

7
A cosa serve il <remove>tag qui? Non sembra essere documentato nel riferimento IIS ( iis.net/configreference )
Pathogen

18
@Pathogen A volte IIS genera un errore se la mimeMap esiste già. Rimuovendolo prima di aggiungerlo corregge quell'errore.
Allan,

214

font/woff2

Per nginx aggiungere quanto segue al mime.typesfile:

font/woff2 woff2;


Vecchia risposta

Il tipo mime (a volte scritto come mimetype) per i caratteri WOFF2 è stato proposto come application/font-woff2.

Inoltre, se fai riferimento alle specifiche ( http://dev.w3.org/webfonts/WOFF2/spec/ ) vedrai che font/woff2è in discussione. Ho il sospetto che il tipo mime di file per tutti i caratteri alla fine sarà il più logico font/*( font/ttf, font/woff2ecc.) ...

NB WOFF2 è ancora nello stato "Working Draft" - non ancora adottato ufficialmente.


38
Questo è stato aggiornato Le specifiche lo rendono molto chiaro. Il tipo è font e il sottotipo è woff2 che rende font / woff2. Questo è anche ciò che utilizza Google Fonts stesso.
Raivo Laanemets,

Non riesco ancora a vedere nulla di definitivo nelle specifiche. Anche se parlano di voler introdurre un font/*tipo di livello superiore. Penso che, nell'interesse della piena informazione, lo aggiungerò alla mia risposta.
atwright147,

@ atwright147 i tipi mime sono descritti nell'appendice A, per Woff2 è la sezione 6.5 dell'appendice A.
Richard

3
Aggiornato marzo 2016: ora è una raccomandazione del candidato e font / woff2 è il mimetype w3.org/TR/WOFF2/#IMT
Chris F Carroll

36

Apache

In Apache, puoi aggiungere il woff2tipo mime tramite il tuo .htaccessfile come indicato da questo link .

AddType  application/font-woff2  .woff2

IIS

In IIS, aggiungi semplicemente il seguente mimeMaptag nel tuo web.configfile all'interno del staticContenttag.

<configuration>
  <system.webServer>
    <staticContent>
      <mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />

che direapplication/x-font-woff2
Nerdroid l'

1
Ehi @Moes :) In verità, application/x-font-woff2è il vecchio tipo per quando woff2 era molto nuovo. Le specifiche del W3C ora consigliano l'uso application/font-woff2poiché è ampiamente supportato. Se stai cercando la compatibilità con le versioni precedenti, sentiti libero di includere anche x-font-woff2.
Fizzix,

In IIS, fare attenzione a rimuovere tutte le voci di estensione definite in precedenza nel caso in cui siano definite da qualche altra parte nel server. Questo ti darà errori molto confusi se lo incontri! <remove fileExtension=".woff2" />e poi definiscilo come sopra :)
giocate il

Si noti che la proposta e anche molto probabilmente accettata è font / woff2
Syakur Rahman,

1
La Raccomandazione W3C per il formato file WOFF 2.0 ora consiglia l'uso font/woff2come tipo MIME ma l' elenco IANA dei tipi di media ufficiali non include (ancora) WOFF2.
Anthony Geoghegan,

17

http://dev.w3.org/webfonts/WOFF2/spec/#IMT

Sembra che W3C sia passato a font/woff2

Vedo che c'è qualche discussione sul tipo corretto di mime. Nel link leggiamo:

Questo documento definisce un tipo MIME di livello superiore "font" ...

... i sottotipi IANA ufficialmente definiti come "application / font-woff" ...

I membri del WG W3C WebFonts ritengono che l'uso del tipo di livello "applicazione" non sia l'ideale.

e più tardi

6.5. WOFF 2.0

    Type name:

        font
    Subtype name:

        woff2

Quindi la proposta di W3C differisce da IANA.

Possiamo vedere che differisce anche dal tipo di woff: http://dev.w3.org/webfonts/WOFF/spec/#IMT dove leggiamo:

Type name:

    application
Subtype name:

    font-woff

che è

application/font-woff

http://www.w3.org/TR/WOFF/#appendix-b


1
Non vedo nulla su quella pagina per suggerire che è stato modificato in font/woff2puoi calmare per favore?
atwright147,

Forse l'ho capito male. Intendo l'appendice A, '6.5. WOFF 2.0 '
fantastory

1
Non riesco a immaginare che questo sia sottovalutato. Le specifiche lo rendono molto chiaro. Il tipo è font e il sottotipo è woff2 che rende font / woff2. Questo è anche ciò che utilizza Google Fonts stesso.
Raivo Laanemets,

2
Inizialmente ho votato a favore, ma ho pensato di poter pubblicare un post sul blog. Allo stato attuale, questo post è in linea con le specifiche WOFF2 ma è ancora una bozza di lavoro e non è stato ancora spostato nello stato di raccomandazione . Ciò significa che woff2 non ha tecnicamente un mime in quanto font/woff2non è valido fino a quando non viene approvato, ma il documento delle specifiche ha revocato l'approvazione di application/font-woff2lasciarci senza uno ufficiale. Quindi penso che a questo punto userò application/font-woff2.
rtpHarry,

2
@rtpHarry Ho precedentemente votato sia questa risposta che il tuo commento. A partire da febbraio 2017, il W3C ha pubblicato lo Standards Track RFC 8081, rendendo font/woff2il tipo di supporto ufficiale. Vedi stackoverflow.com/a/43321601/1640661
Anthony Geoghegan
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.