Jenis MIME yang tepat untuk font .woff2

279

Hari ini saya memperbarui paket Font Awesome ke 4.3.0 dan memperhatikan bahwa font woff2 ditambahkan. File itu terhubung dalam CSS jadi saya perlu mengkonfigurasi nginx untuk menyajikan file woff2 dengan benar.

Saat ini saya memiliki blok ini di nginx config untuk font:

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

Apa tipe mime yang tepat untuk font woff2?

Limon Monte
sumber
1
Berikut ini cara membuat cache file woff2 di Apache: <IfModule mod_mime.c> AddType font/woff2 woff2dan <IfModule mod_expires.c> ExpiresActive On ExpiresByType font/woff2 "access plus 1 month". (Menutup tag dan baris baru dihilangkan.)
Chloe

Jawaban:

437

Di IIS Anda dapat mendeklarasikan tipe mime untuk file font WOFF2 dengan menambahkan berikut ini ke web.config proyek Anda:

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

Pembaruan : Jenis mime dapat berubah sesuai dengan spesifikasi Draft WOFF2 W3C Editor terbaru . Lihat Lampiran A: Registrasi Jenis Media Internet bagian 6.5. WOFF 2.0 yang menyatakan format yang diusulkan terbaru adalahfont/woff2

Steven Anderson
sumber
6
Sekarang tipe-MIME di IIS 10 adalah dukungan .woff2. Dengan IIS 10 Anda tidak perlu mengubah apa pun di web.config.
Kevin
7
Apa tujuan <remove>tag melayani di sini? Tampaknya tidak didokumentasikan dalam referensi IIS ( iis.net/configreference )
Pathogen
18
@ Patogen Terkadang IIS melempar kesalahan jika mimeMap sudah ada. Menghapusnya sebelum menambahkannya memperbaiki kesalahan itu.
Allan
214

font/woff2

Untuk nginx tambahkan yang berikut ke mime.typesfile:

font/woff2 woff2;


Jawaban Lama

Tipe mime (kadang ditulis sebagai mimetype) untuk font WOFF2 telah diusulkan sebagai application/font-woff2.

Juga, jika Anda merujuk pada spec ( http://dev.w3.org/webfonts/WOFF2/spec/ ) Anda akan melihat bahwa font/woff2sedang dibahas. Saya menduga bahwa jenis pantomim filal untuk semua font pada akhirnya akan menjadi lebih logis font/*( font/ttf, font/woff2dll) ...

NB WOFF2 masih dalam status 'Working Draft' - belum diadopsi secara resmi.

atwright147
sumber
38
Ini telah diperbarui. Spesifikasi membuatnya sangat jelas. Jenis adalah font dan subtipe adalah woff2 yang membuatnya adalah font / woff2. Ini juga yang digunakan oleh Google Fonts.
Raivo Laanemets
Saya masih tidak dapat melihat sesuatu yang pasti dalam spek. Meskipun mereka berbicara tentang keinginan untuk memperkenalkan font/*tipe tingkat atas. Saya pikir demi kepentingan informasi lengkap, saya akan menambahkannya ke jawaban saya.
atwright147
@ atwright147 jenis pantomim tercakup dalam lampiran A, untuk Woff2 ini adalah bagian 6.5 dari lampiran A.
Richard
3
Diperbarui Maret 2016: sekarang merupakan rekomendasi kandidat dan font / woff2 adalah mimetype w3.org/TR/WOFF2/#IMT
Chris F Carroll
36

Apache

Di Apache, Anda dapat menambahkan woff2tipe mime melalui .htaccessfile Anda seperti yang dinyatakan oleh tautan ini .

AddType  application/font-woff2  .woff2

IIS

Di IIS, cukup tambahkan mimeMaptag berikut ke web.configfile Anda di dalam staticContenttag.

<configuration>
  <system.webServer>
    <staticContent>
      <mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />
Fizzix
sumber
bagaimana denganapplication/x-font-woff2
Nerdroid
1
Hey @Moes :) Sebenarnya, application/x-font-woff2adalah tipe lama ketika woff2 masih sangat baru. The W3C Spec sekarang merekomendasikan menggunakan application/font-woff2karena yang banyak didukung. Jika Anda setelah kompatibilitas mundur, jangan ragu untuk memasukkan x-font-woff2.
Fizzix
Di IIS, berhati-hatilah untuk menghapus entri ekstensi yang telah ditentukan sebelumnya jika mereka didefinisikan di tempat lain di server. Ini akan memberi Anda kesalahan yang sangat membingungkan jika Anda menemukannya! <remove fileExtension=".woff2" />dan kemudian mendefinisikannya seperti di atas :)
jocull
Perhatikan bahwa yang diusulkan dan juga paling mungkin diterima adalah font / woff2
Syakur Rahman
1
The W3C Rekomendasi untuk WOFF File Format 2.0 sekarang merekomendasikan menggunakan font/woff2sebagai jenis MIME tetapi daftar IANA jenis media resmi tidak (belum) termasuk WOFF2.
Anthony Geoghegan
17

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

Tampaknya w3c beralih ke font/woff2

Saya melihat ada beberapa diskusi tentang tipe mime yang tepat. Di tautan kita membaca:

Dokumen ini mendefinisikan jenis "font" MIME tingkat atas ...

... subtipe IANA yang didefinisikan secara resmi seperti "application / font-woff" ...

Para anggota W3C WebFonts WG percaya bahwa penggunaan tipe tingkat atas "aplikasi" tidak ideal.

dan kemudian

6.5. WOFF 2.0

    Type name:

        font
    Subtype name:

        woff2

Jadi proposisi dari W3C berbeda dari IANA.

Kita dapat melihat bahwa itu juga berbeda dari tipe woff: http://dev.w3.org/webfonts/WOFF/spec/#IMT di mana kita membaca:

Type name:

    application
Subtype name:

    font-woff

yang mana

application/font-woff

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

fantastory
sumber
1
Saya tidak melihat apa-apa di halaman itu untuk menunjukkan bahwa itu telah diubah untuk font/woff2dapat Anda tolong?
atwright147
Mungkin saya salah paham. Maksud saya Lampiran A, '6.5. WOFF 2.0 '
fantastory
1
Tidak dapat membayangkan bahwa ini diturunkan. Spesifikasi membuatnya sangat jelas. Jenis adalah font dan subtipe adalah woff2 yang membuatnya adalah font / woff2. Ini juga yang digunakan oleh Google Fonts.
Raivo Laanemets
2
Saya membatalkan ini pada awalnya tetapi dan berpikir saya bisa mendapatkan posting blog dari ini. Seperti sudah ada, postingan ini sejalan dengan spesifikasi WOFF2 tetapi itu masih merupakan Draft Kerja dan belum dipindahkan ke Status Rekomendasi . Ini berarti woff2 secara teknis tidak memiliki pantomim karena font/woff2tidak valid sampai disetujui tetapi dokumen spek telah mencabut dukungan application/font-woff2meninggalkan kami tanpa yang resmi. Karena itu saya pikir pada titik ini saya akan menggunakan application/font-woff2.
rtpHarry
2
@rtpHarry Saya sebelumnya telah mengangkat baik jawaban ini dan komentar Anda. Pada Februari 2017, W3C menerbitkan Track Standar RFC 8081, membuat font/woff2jenis media resmi. Lihat stackoverflow.com/a/43321601/1640661
Anthony Geoghegan