MIMEタイプ
MIMEは「Multipurpose Internet Mail Extensions」の略です。
MIMEタイプ、または「メディアタイプ」は、特定のファイル形式を識別するテキスト文字列です。MIMEタイプは、スラッシュで区切られた2つの部分(タイプとサブタイプ)で構成されます。たとえば、プレーンテキストファイルのMIMEタイプは次のとおりです。
text/plain
歴史
SMTPは、メールメッセージの送信に使われる標準プロトコルですが、もともとはファイル転送をサポートするように設計されていませんでした。メールの添付ファイルはメッセージの一部としてエンコードする必要があり、そのサイズが制限されていました。1990年代に導入されたMIMEにより、カスタムのContent-Type:ヘッダーを使って、メールでファイルを送信しやすくなりました。それから数十年が経過した現在も、SMTPは同じ方法を使っています。添付ファイルを含むメールメッセージには、次のようなヘッダーが含まれます。
Content-Type: multipart/mixed; boundary ="[identifier]"
その後、ほかのインターネットプロトコルも、インターネット経由で転送されるファイルを識別する方法としてMIMEタイプを採用しました。たとえばHTTPは、URLからアクセスできるデータの種類を識別するためにMIMEタイプを使います。
標準的なWebページのMIMEタイプは次のとおりです。
Content-Type: text/html
MIMEタイプの例
MIMEタイプは、何千種類ものファイル形式を識別するために使われます。公式の一覧はIANA(Internet Assigned Numbers Authority)が管理しています。次にいくつか例を示します。
- text/html - HTMLドキュメント(Webページ)
- text/css - CSSファイル
- text/javascript - JavaScriptファイル
- image/jpeg - JPEG画像ファイル
- image/png - PNG画像ファイル
- audio/wav - WAVEオーディオファイル
- video/mp4 - MPEGビデオファイル
- application/zip - ZIP圧縮アーカイブ
MIMEタイプとファイル拡張子の違い
MIMEタイプとファイル拡張子は、どちらもファイル形式を識別するという点で似ています。ただし、MIMEタイプには次の2つの利点があります。
- タイプとサブタイプが含まれています。タイプ(スラッシュの前にある部分)はファイルの種類を分類するのに役立つため、アプリケーションがファイルを簡単に絞り込めます。たとえば、インターネットプログラムでテキストファイルと画像ファイルの転送は許可し、オーディオファイルやビデオファイルの転送は許可しないようにできます。
- ファイル形式と1対1の関係にあります。ファイル形式によっては、複数のファイル拡張子があります。たとえば、JPEG画像には.JPGまたは.JPEG拡張子を付けられます。Webページには.HTMまたは.HTML拡張子を付けられます。MIMEタイプは、アプリケーションや異なるプロトコル間で認識される、ファイル形式の標準識別子を提供します。
知識をテストする