WOFF 글꼴의 MIME 유형?


556

WOFF 글꼴은 어떤 MIME 유형으로 제공되어야합니까?

트루 타입 (ttf) 글꼴을로 font/truetype, 오픈 타입 ( otf)을로 제공 font/opentype하지만 WOFF 글꼴의 올바른 형식을 찾을 수 없습니다.

나는 시도 font/woff, font/webopen그리고 font/webopentype하지만, 크롬은 여전히 불평 :

"리소스로 해석되었지만 MIME 유형 application / octet-stream으로 전송 된 리소스."

아는 사람 있나요?


1
Chrome의 불만을 막을 방법이 없습니까?
John Mee

1
Node.js / Meteor 솔루션은 다음과 같습니다. npm install mime
Eric Leroy

또한 IIS에서 마침내 내 문제를 해결 한 다른 구성에 주목하십시오. stackoverflow.com/questions/12458444/…
Iman

1
font/woff이제 woff의 올바른 MIME 유형이며 Chrome에서 불만을 제기하지 않습니다.
Mikael Dúi Bolinder

답변:


737

2017 년 6 월 22 일에 대한 Keith Shaw의 의견 에서 업데이트 :

2017 년 2 월 현재 RFC8081 이 제안 된 표준입니다. 글꼴의 최상위 미디어 유형을 정의하므로 WOFF 및 WOFF2의 표준 미디어 유형은 다음과 같습니다.

font/woff

font/woff2


2011 년 1 월 이 발표 된 그 동안 크롬이 인식 할 수

application/x-font-woff

WOFF의 MIME 유형으로. 이 변경 사항은 현재 Chrome 베타 버전이며 아직 안정적이지 않은 경우 너무 멀지 않아야합니다.


8
Chromium 18.0, 2012/08/30 기준으로 application / x-font-woff를 사용해야합니다
cc young

6
cc young이 말했듯이 Chrome에서 "글꼴로 해석되지만 MIME 유형 application / font-woff로 전송되는 리소스"라는 Chrome 경고를 제거하려면 "application / x-font-woff"를 사용해야합니다.
Jamie

9
application / font-woff를 사용하는 경우 Chrome 버전 24.0.1312.52가 여전히 "리소스로 해석되었지만 전송되었습니다 ..."로 응답하는 것 같습니다. 아직은 "application / x-font-woff"를 사용해야 할 것 같습니다.
Nicholi

4
다음에 따르면 커밋 웹킷, font/woff그리고 application/x-font-woff찬성 제거됩니다 application/font-woff. 또한 경고가 로그 메시지로 다운 그레이드되었습니다. trac.webkit.org/changeset/144763/trunk/Source/WebCore/inspector/…
Jorrit Schippers

6
새로운 것은 .woff2어떻습니까?
머핀 맨

135

나를 위해 다음은 .htaccess 파일에서 작업하기 시작했습니다.

AddType font/ttf .ttf
AddType font/eot .eot
AddType font/otf .otf
AddType font/woff .woff
AddType font/woff2 .woff2   

2
더 많은 사람들이 도움이되지 않았다고 믿을 수 없습니다. 이것은 나를 위해 일한 유일한 것입니다.
Tim Joyce

4
이 질문을 할 때 'font / woff'가 작동 하지 않았습니다 . 누구든지 지금 그렇게 할 수 있습니까?
Nico Burns

5
IIS Express에서는 configuration / system.webServer / staticContent 아래에서 web.config에 mimeMap 요소를 추가 할 수 있습니다 .<mimeMap fileExtension=".woff" mimeType="font/woff" />
shovavnik

6
Chrome 18부터는 작동이 중지되었습니다. 이제 application / x-font-woff가 작동하는 것 같습니다.
cc young

4
기록을 위해 Google Fonts는 font/woff및을 사용합니다 font/woff2.
DisgruntledGoat

55

될 것 application/font-woff입니다.

http://www.w3.org/TR/WOFF/#appendix-b(W3C 후보 권장 사항 2011 년 8 월 4 일)를 참조하십시오 .

http://www.w3.org/2002/06/registering-mediatype.html

Mozilla CSS 폰트 페이스 노트에서

Gecko에서 웹 글꼴은 HTTP 액세스 제어를 사용하여이 제한을 완화하지 않는 한 도메인 제한이 동일합니다 (글꼴 파일은 페이지를 사용하는 페이지와 동일한 도메인에 있어야 함). 참고 : TrueType, OpenType 및 WOFF 글꼴에 대해 정의 된 MIME 유형이 없으므로 지정된 파일의 MIME 유형은 고려되지 않습니다.

출처 : https://developer.mozilla.org/en/CSS/@font-face#Notes


3
그러나 Marcel이 지적한대로 Chromium은 application / font-woff가 승인 될 때까지 RFC 2048에 따라 application / x-font-woff를 인식합니다.
jflaflamme

2
WOFF 사양은 이제 권장 사항이며 application / font-woff에서 변경되지 않습니다. w3.org/TR/WOFF/#appendix-b
Steve Workman

26

.NET / IIS에 글꼴 마임 유형을 추가하기위한 참조

web.config를 통해

<system.webServer>
  <staticContent>
     <!-- remove first in case they are defined in IIS already, which would cause a runtime error -->
     <remove fileExtension=".woff" />
     <remove fileExtension=".woff2" />
     <mimeMap fileExtension=".woff" mimeType="font/woff" />
     <mimeMap fileExtension=".woff2" mimeType="font/woff2" />
  </staticContent>
</system.webServer>

IIS 관리자를 통해

IIS에 woff mime 유형을 추가하는 스크린 샷



19

2017 년 2 월 현재 RFC8081 이 제안 된 표준입니다. 글꼴의 최상위 미디어 유형을 정의하므로 WOFF 및 WOFF2의 표준 미디어 유형은 다음과 같습니다.

font/woff
font/woff2

10

참고 :이 답변은 당시에는 정확했지만 RFC 8081 이 출시 된 2017 년에는 구식 이되었습니다.

fontMIME 형식 이 없습니다 ! 따라서 font/xxx항상 잘못되었습니다.


@UmarFarooqKhawaja이 답변은 불완전하지만 잘못은 아닙니다. 이 답변과 귀하의 의견 사이에 변경된 유일한 것은 application/font-woff표준에 추가되어 다음과 같은 사항을 대체합니다 application/x-font-woff(실제 소프트웨어 업데이트는 또 다른 문제입니다). 양식의 완성 된 콘텐츠 유형을 font/xxx유효한 것으로 만들지 못했습니다 .
Jon Hanna


5

.htaccess에 다음을 추가하십시오.

AddType font/woff woff

행운을 빕니다


4

@ 니코 ,

현재 woff font mime 유형에 대해 정의 된 표준이 없습니다. 글꼴 배달 CDN 서비스를 사용하고 글꼴 / woff를 사용하며 크롬에서 동일한 경고가 표시됩니다.

참조 : 인터넷 할당 번호 기관



2

나는이 게시물이 오래되었다는 것을 알고 있지만 글꼴을 내 nginx 로컬 컴퓨터에서 작동시키고 많은 솔루션을 시도하는 데 많은 시간을 보낸 후에 마침내 매력처럼 나를 위해 일한 솔루션을 얻었습니다.

location ~* \.(eot|otf|ttf|woff|woff2)$ {
    add_header Access-Control-Allow-Origin *;
}

괄호 안에는 글꼴의 확장자 또는 일반적으로로드하려는 파일을 넣을 수 있습니다. 예를 들어 글꼴과 이미지 (png, jpg 등)에도 사용했기 때문에이 솔루션이 글꼴에만 적용된다고 혼동하지 마십시오.

그냥 nginx 설정 파일에 넣고 다시 시작하십시오.


1

어쩌면 이것은 누군가를 도울 것입니다. IIS 7에서.ttf 에서 이미 알려진 MIME 유형이라는 것을 알았습니다. 다음과 같이 구성됩니다.

application/octet-stream

방금 모든 CSS 글꼴 유형에 추가했습니다..oet , .svg, .ttf, .woff) 및 IIS 그들을 제공하기 시작했다. Chrome 개발 도구는 유형을 다시 해석하는 것에 대해 불평하지 않습니다.

건배, 마이클


8
'application / octet-stream'은 "이것이 무엇인지 모르겠습니다"라고 말하는 웹 서버입니다.
Synchro

1
예, 알아요 그러나 중요한 점은 효과가 있었지만 더 구체적인 옵션 중 많은 부분이 IIS7에서 글꼴을 사용하지 않는 것 같습니다. 내 의견은 가장 정확하지 않은 것보다 실용적이었습니다 (작동하지 않았기 때문에).
Michael Kennedy

1

모든 솔루션 index.php에 대해 양식 URL과 woff 파일을 제거하십시오. .htaccess 파일에 아래 코드를 작성하고 application / config / config.php 파일을 대체하십시오 : $ config [ 'index_page'] = '';

Linux 호스팅 서버 전용 .htaccess 파일 세부 사항

AddType font/ttf .ttf
AddType font/eot .eot
AddType font/otf .otf
AddType font/woff .woff
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    #Removes access to the system folder by users.
    #Additionally this will allow you to create a System.php controller,
    #previously this would not have been possible.
    #'system' can be replaced if you have renamed your system folder.
    RewriteCond %{REQUEST_URI} ^system.*
    RewriteRule ^(.*)$ /index.php?/$1 [L]

    #When your application folder isn't in the system folder
    #This snippet prevents user access to the application folder
    #Submitted by: Fabdrol
    #Rename 'application' to your applications folder name.
    RewriteCond %{REQUEST_URI} ^application.*
    RewriteRule ^(.*)$ /index.php?/$1 [L]

    #Checks to see if the user is attempting to access a valid file,
    #such as an image or css document, if this isn't true it sends the
    #request to index.php
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>

<IfModule !mod_rewrite.c>
    # If we don't have mod_rewrite installed, all 404's
    # can be sent to index.php, and everything works as normal.
    # Submitted by: ElliotHaughin

    ErrorDocument 404 /index.php
</IfModule>

0

IIS는 .ttf를 응용 프로그램 / 옥텟 스트림으로 자동 정의했으며 fontshop은 .woff를 응용 프로그램 / 옥텟 스트림으로 정의 할 것을 권장합니다.


0

오프 :

  1. 웹 열기 글꼴 형식
  2. TrueType 또는 PostScript (CFF) 외곽선으로 컴파일 할 수 있습니다.
  3. 현재 FireFox 3.6 이상에서 지원됩니다

그것을 추가하십시오 :

AddType application/vnd.ms-fontobject .eot
AddType application/octet-stream .otf .ttf


-1

MIME 유형이 유일한 문제는 아닙니다. 글꼴 파일이 S3 또는 다른 도메인에서 호스팅되는 경우 Firefox가 다른 도메인에서 글꼴을로드하지 않는 문제가 추가로 발생할 수 있습니다. Apache를 사용하면 쉽게 해결할 수 있지만 Nginx에서는 글꼴 파일을 base-64로 인코딩하고 글꼴 css 파일에 직접 포함해야한다는 것을 읽었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.