WOFF字体应该作为什么mime类型?
我正在服务truetype (ttf)字体作为字体/truetype和opentype (otf)作为字体/opentype,但我找不到WOFF字体的正确格式。
我已经尝试了字体/woff,字体/webopen,和字体/webopentype,但Chrome仍然抱怨:
资源解释为字体,但使用MIME类型应用程序/字节流传输。
有人知道吗?
WOFF字体应该作为什么mime类型?
我正在服务truetype (ttf)字体作为字体/truetype和opentype (otf)作为字体/opentype,但我找不到WOFF字体的正确格式。
我已经尝试了字体/woff,字体/webopen,和字体/webopentype,但Chrome仍然抱怨:
资源解释为字体,但使用MIME类型应用程序/字节流传输。
有人知道吗?
当前回答
注:这个答案在当时是正确的,但在2017年RFC 8081发布时就过时了
没有字体的MIME类型!因此,font/xxx总是错误的。
其他回答
我知道这篇文章有点老了,但在花了很多时间试图让字体在我的nginx本地机器上工作,并尝试了大量的解决方案后,我终于得到了一个对我来说很有魅力的解决方案。
location ~* \.(eot|otf|ttf|woff|woff2)$ {
add_header Access-Control-Allow-Origin *;
}
在圆括号内,您可以放置字体的扩展名或您想要加载的文件。例如,我将它用于字体和图像(png,jpg等),所以不要感到困惑,这个解决方案只适用于字体。
只要把它放入你的nginx配置文件,重新启动,我希望它也适用于你!
对于所有解决方案index.php删除表单url和woff文件允许。为了在.htaccess文件中编写以下代码,并对应用程序/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>
更新自2017年6月22日Keith Shaw的评论:
截至2017年2月,RFC8081是建议标准。它为字体定义了一个顶级媒体类型,因此WOFF和WOFF2的标准媒体类型如下: 字体/ woff 字体/ woff2
2011年1月,Chromium宣布将同时承认
应用程序/ x-font-woff
作为《WOFF》的模版我知道这个改变现在是在Chrome测试版,如果还不稳定,它应该不会太远。
对我来说,接下来就是在.htaccess文件中工作。
AddType font/ttf .ttf
AddType font/eot .eot
AddType font/otf .otf
AddType font/woff .woff
AddType font/woff2 .woff2
IIS自动将.ttf定义为应用程序/octet-stream,这似乎工作正常,而fontshop建议将.woff定义为应用程序/octet-stream