コンテンツにスキップ

MIMEタイプ一覧

ファイルの種類を示すMIMEタイプ(メディアタイプ)の一覧表です。Webサーバーの設定、Content-Typeヘッダーの指定、ファイルアップロードのバリデーションなどの開発作業にお役立てください。

MIMEタイプとは

MIME(Multipurpose Internet Mail Extensions)タイプは、ファイルの形式や性質を識別するための標準的な仕組みです。タイプ/サブタイプの形式で表記され、Webブラウザやサーバーがファイルの処理方法を判断するために使用されます。HTTPレスポンスのContent-Typeヘッダーや、HTMLの<input type="file" accept="...">属性などで指定します。

画像(image)

拡張子 MIMEタイプ 説明
.jpg / .jpegimage/jpegJPEG画像。写真に最適な非可逆圧縮形式
.pngimage/pngPNG画像。透過対応の可逆圧縮形式
.gifimage/gifGIF画像。アニメーション対応、256色まで
.webpimage/webpWebP画像。Google開発の高圧縮形式
.avifimage/avifAVIF画像。AV1ベースの次世代形式
.svgimage/svg+xmlSVGベクター画像。XMLベース
.icoimage/x-iconアイコンファイル。favicon等に使用
.bmpimage/bmpビットマップ画像。無圧縮
.tiff / .tifimage/tiffTIFF画像。印刷・DTPで使用

ドキュメント(application)

拡張子 MIMEタイプ 説明
.pdfapplication/pdfPDF文書
.docapplication/mswordMicrosoft Word(旧形式)
.docxapplication/vnd.openxmlformats-officedocument.wordprocessingml.documentMicrosoft Word(OOXML形式)
.xlsapplication/vnd.ms-excelMicrosoft Excel(旧形式)
.xlsxapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheetMicrosoft Excel(OOXML形式)
.pptapplication/vnd.ms-powerpointMicrosoft PowerPoint(旧形式)
.pptxapplication/vnd.openxmlformats-officedocument.presentationml.presentationMicrosoft PowerPoint(OOXML形式)

テキスト(text)

拡張子 MIMEタイプ 説明
.txttext/plainプレーンテキスト
.html / .htmtext/htmlHTML文書
.csstext/cssCSSスタイルシート
.csvtext/csvカンマ区切りテキスト
.xmltext/xmlXML文書
.jstext/javascriptJavaScript(application/javascriptも有効)
.jsonapplication/jsonJSONデータ
.mdtext/markdownMarkdownテキスト

音声(audio)

拡張子 MIMEタイプ 説明
.mp3audio/mpegMP3音声。最も普及した音声形式
.wavaudio/wavWAV音声。無圧縮PCM
.oggaudio/oggOgg Vorbis音声
.flacaudio/flacFLAC音声。可逆圧縮
.aacaudio/aacAAC音声。MP3の後継
.webmaudio/webmWebM音声
.m4aaudio/mp4MPEG-4音声

動画(video)

拡張子 MIMEタイプ 説明
.mp4video/mp4MP4動画。最も普及した動画形式
.webmvideo/webmWebM動画。Web向けオープン形式
.avivideo/x-msvideoAVI動画
.movvideo/quicktimeQuickTime動画
.mkvvideo/x-matroskaMatroska動画コンテナ
.mpegvideo/mpegMPEG動画

アーカイブ・圧縮(application)

拡張子 MIMEタイプ 説明
.zipapplication/zipZIP圧縮アーカイブ
.gz / .gzipapplication/gzipGzip圧縮ファイル
.tarapplication/x-tartarアーカイブ
.tar.gzapplication/gziptar+gzip圧縮アーカイブ
.rarapplication/vnd.rarRAR圧縮アーカイブ
.7zapplication/x-7z-compressed7-Zip圧縮アーカイブ
.bz2application/x-bzip2Bzip2圧縮ファイル

フォント(font)

拡張子 MIMEタイプ 説明
.wofffont/woffWeb Open Font Format
.woff2font/woff2WOFF2。圧縮率が向上
.ttffont/ttfTrueTypeフォント
.otffont/otfOpenTypeフォント

その他

拡張子 MIMEタイプ 説明
(不明)application/octet-streamバイナリデータ(汎用)。不明な形式のデフォルト
.wasmapplication/wasmWebAssemblyバイナリ

開発でのMIMEタイプの使い方

サーバー側の設定

Webサーバー(Apache / Nginx)では、ファイル拡張子とMIMEタイプの対応を設定します。正しく設定しないと、ブラウザがファイルを正しく処理できない場合があります。例えば.webpファイルに正しいMIMEタイプが設定されていないと、画像として表示されずダウンロードされてしまうことがあります。

ファイルアップロードのバリデーション

ファイルアップロード機能を実装する際は、拡張子だけでなくMIMEタイプも検証することが重要です。ただし、MIMEタイプはクライアント側で偽装可能なため、セキュリティ上はマジックバイト(ファイル先頭のバイト列)による検証も併用することを推奨します。

Content-Typeヘッダー

APIレスポンスやファイルダウンロード時には、適切なContent-Typeヘッダーを設定しましょう。JSONデータにはapplication/json、CSVファイルにはtext/csvを指定します。文字コード指定が必要な場合はtext/html; charset=utf-8のようにcharsetパラメータを付加します。