web-dev-qa-db-ja.com

MIMEタイプ 'image/jpg'は 'image/jpeg'と同じですか?

非常に単純な質問ですが、どこでもオンラインで見つけることができないようです。ファイルの種類に応じて拡張子が表示されるようなプログラムを作成しようとしています。

244
Joe Scotto

いいえ、image/jpgimage/jpegと同じではなく、image/jpegのみがJPEGファイルの実際のMIMEタイプとして認識されます。

https://tools.ietf.org/html/rfc3745https://www.w3.org/Graphics/JPEG/ を参照してください。

IEに誤ったimage/jpgのContent-Typeを提供すると、問題が発生する可能性があります。 http://www.bennadel.com/blog/2609-internet-Explorer-aborts-images-with-the-を参照してください。 wrong-mime-type.htm

351
Adrian Baker

それが役に立つかもしれないそれらのために、私は このリスト を私が私のアプリ上の画像を扱わなければならないときに私のcontent-typeを定義するための参照として使う。

Jpg拡張子はContent-type : image/jpegで宣言できると言っています

Content-typeにimage/jpg属性はありません。

4
lucyjosef

tl; dr それはあなたが尋ねる人によって異なります

全体的に見て、MIMEタイプimage/jpgはありません。それでも、実際には、ほとんどすべてのソフトウェアが「*.jpg」という名前の画像ファイルを正しく処理します。 MIMEタイプに関連付けられたファイル名拡張子のさまざまな関連付け(たとえば、ファイル名拡張子.jpgがあります)は、どの組織がファイル名拡張子のテーブルをMIMEタイプに作成したかによって異なるため、この特定のトピックは混乱します。

例えば、さまざまなJPEG Image formatファイル名拡張子とそれに関連するMIMEタイプによって大きく異なる3つの「完全なリスト」があります。

これらの "完全なリスト"には、MIMEタイプimage/jpgがありません。しかしMIMEタイプimage/jpegの場合、これらのリストはさまざまなファイル名拡張子を持ちます(.jpeg.jpg、…)。また、ファイル名拡張子と宣言されたMIMEタイプで重複する場合と重複しない場合がある場合、JPEG Image formatにはさまざまな種類があります(例:Progressive JPEG Image formatJPEG 2000など)。これは全体的な混乱を招きます。 (別の混乱を招くことです。 "mime"、 "MIME"、 "MIMEタイプ"、 "mimeタイプ"、 "です。 mime/type "⁉)

誰でも(または会社で)自分のファイル拡張子とMIMEタイプを作り上げることがあるようです。 IANAによる最も公式なのような文書は驚くほど不十分で(画像タイプ.jpegには何も登録されていません。.JPEGはビデオタイプとしてのみ知られています)、会社固有のjpegフォーマット(例えばvnd.sealedmedia.softseal.jpg)を満たすようです。


関連する質問 " 惑星上のすべてのMIMEタイプのリスト、ファイル拡張子にマッピングされていますか? "。

1

ここで注意すべき重要なことは、MIMEタイプがnotファイル拡張子と同じであることです。ただし、同じ値を持つ場合もあります。

https://www.iana.org/assignments/media-types/media-types.xhtml 登録済みのMimeタイプのリストが含まれますが、独自のMimeタイプの作成を妨げるものは何もありません。あなたは送信側と受信側の両方にいます。ここにマイクロソフトが登場します。

多くの混乱があるのは、オペレーティングシステムが、拡張子と呼ばれるファイル名の末尾を使用してファイルタイプを識別する独自の方法を持っているという事実です。現代のオペレーティングシステムでは、名前全体が1つの長い文字列ですが、より原始的なオペレーティングシステムでは、別個の属性として扱われます。

混乱の原因となったOSは、MSDOSであり、拡張子が3文字に制限されていました。この制限は、同じ方法でデータを保存するSDカードなどのデバイスで今日まで継承されています。

この制限の1つの副作用は、.gifなどの一部のファイル拡張子がMIMEタイプimage/gifと一致する一方で、他のファイル拡張子が危険にさらされることです。これには、image/jpegという拡張子が短縮された.jpgが含まれます。制限が解除された最新のWindowsでさえ、Microsoftは過去を決して放棄しません。そのため、ファイル拡張子は依然として短縮バージョンです。

それを考えると:

  1. ファイル拡張子はnotファイルタイプです
  2. 歴史的に、一部のオペレーティングシステムには深刻なファイル名制限がありました
  3. 一部のオペレーティングシステムは先に進み、独自のルールを作成します

短い答えは次のとおりです。

  • 技術的には、image/jpgのようなものはないので、答えはimage/jpegと同じではないということです
  • それは、オペレーティングシステムとソフトウェアが同じものであるかのように扱うことを止めません一部の
0
Manngo