7

静的アセットからいくつかの Web フォント (.woff) を提供しており、正しい MIME タイプ ( ) を設定したいと考えていますapplication/x-font-woff。私はこれをやろうとしましたconfig/initializers/mime_types.rbが、効果がありませんでした:

Mime::Type.register "application/x-font-woff", :woff

返された MIME タイプはそのままapplication/octet-streamでした。この行を追加しようとさえしました (これは、レール ソース内で string を見つけることができる唯一の場所だったためです"woff"):

Rack::Mime::MIME_TYPES[".woff"] = "application/x-font-woff"

しかし、それでも役に立ちませんでした。Web フォントの MIME タイプを正しく設定するにはどうすればよいですか?

4

2 に答える 2

12

Rack が MIME タイプのリストを正しい に修正するまでwoff、暫定的なハックは実際にあなたのconfig/initializers/mime_types.rb行です:

# tell Rack (and Sprockets) about modern font MIME types:
Rack::Mime::MIME_TYPES['.woff'] = 'application/x-font-woff'

ただし、実際に有効にするにはtmp/cache、サーバーを消去して再起動する必要があります。

于 2012-10-02T20:28:14.250 に答える
0

私もそれに対するハックソリューションを見つけられませんでしたが、数日前にこれを調査しました(参考までに、WEBRickを実行している私のRails 3.2開発サーバーで)、応答に不適切なMIMEタイプを設定するのはSprocketsです。 Rack に選択を委譲します。Rack は、フォントに渡す MIME タイプについて愚かな概念を持っています (この狂ったコミットの時点で)。

私は Sprocketsに(詳細な)チケットを提出し、 Rack にプル リクエストを提出して、代わりに最も理にかなったアップストリームで修正されることを望んでいましたが、どちらもまだ多くのアクションを見ていません。ttf と eof にももっと注意を払うべきだったのかもしれませんが、時すでに遅く、そのときは考えていませんでした。

(どちらかについてコメントすると、問題の認識が高まる可能性があります。1 つの問題は問題ではなく、人の山は修正する価値のある問題ですか? :-)

于 2012-09-29T20:34:40.800 に答える