Content-Disposition Inspect

HTTPヘッダー/経路情報をブラウザ内で整理・診断します。入力はサーバーへ送信しません。観測差分の一次切り分けに使えます。

状態

ブラウザ内で処理します。入力はサーバーへ送信しません。まずはここで一次切り分けしてください。

使い方

Content-Disposition を貼り付けて「解析」。dispositionとパラメータを一覧表示します。

注意(このツール)

  • Content-Disposition: のヘッダー行でも解析できます。

このページについて

何をするツール?

Content-Disposition ヘッダーを解析し、disposition種別と filename などのパラメータを一覧表示します。

ダウンロード時のファイル名文字化けや、inline/attachment の動作確認に向きます。

Content-Disposition の基本

  • attachment はダウンロード、inline はブラウザ表示の意図です。
  • filename は保存時のファイル名、filename* は拡張エンコード用です。
  • Content-Type と組み合わせて挙動が決まります。

構文(読み方)

Content-Disposition は「type; key=value; key=value...」の形です。先頭が disposition 種別で、その後ろに filename などのパラメータが続きます。

  • attachment; filename="report.pdf"
  • attachment; filename*=UTF-8''%E3%83%86%E3%82%B9%E3%83%88.pdf

filename と filename*

ASCIIのみで十分なら filename だけでも動きますが、日本語など非ASCIIを含む場合は filename* を併用するのが一般的です。

  • filename: 互換性向け(古い環境でも見える)
  • filename*: UTF-8 + パーセントエンコード(推奨)

ダウンロードが壊れる原因

  • Content-Type が想定と違い、ブラウザが表示/保存を誤る
  • filename* のエンコードが不正で文字化けする
  • proxy/CDNの変換でヘッダーが欠落する

使いどころ

  • 日本語ファイル名が文字化けする
  • 想定と違う保存名になる
  • inline/attachment の挙動がブラウザで違う

よくあるパラメータ

  • attachment; filename=\"report.pdf\"
  • attachment; filename*=UTF-8''%E3%83%86%E3%82%B9%E3%83%88.pdf
  • inline; filename=\"image.png\"

よくある落とし穴

  • filename と filename* の優先順位を誤解する
  • URLエンコードや文字コードが不一致で文字化けする
  • Content-Type が適切でなく、inline 表示に失敗する

切り分け手順(おすすめ)

  • DevToolsで Content-Disposition と Content-Type を確認
  • filename/filename* を解析して期待値と比較
  • レスポンスヘッダー全体は Response Headers Parser で俯瞰
  • Content-Type Inspect
  • Response Headers Parser
  • URL Encode/Decode(filename* のデコード補助)

このツールでできること

  • disposition種別の抽出
  • filename/filename* の表示
  • パラメータの正規化

注意(運用)

  • 中継機器でヘッダーが書き換わることがあります。取得地点を揃えて比較してください。
  • 最終判断はサーバーログと設定(信頼プロキシ、ルーティング)で確認してください。

参照仕様

  • RFC 6266(Content-Disposition)
  • RFC 5987(拡張パラメータ)

FAQ

filename と filename* のどちらが優先?

一般に filename* が優先されます(対応クライアントの場合)。

inline でもダウンロードになるのはなぜ?

Content-Type やブラウザの対応状況によってはダウンロード扱いになります。

日本語ファイル名のおすすめは?

filename にASCIIの簡易名、filename* にUTF-8で本来名を入れる構成が一般的です。

参考リンク

  1. RFC 6266
  2. RFC 5987
  3. MDN: Content-Disposition
  4. MDN: Content-Type

site_map ルールに基づいて、次に確認すべきページを表示しています。

  1. Retry-After Inspect — Retry-After を解析して再試行待機を確認
  2. Response Headers Parser — レスポンスヘッダーを構造化解析
  3. Server-Timing Inspect — Server-Timing を分解して遅延指標を確認
  4. Content-Type Inspect — Content-Type を解析してMIME/charsetを確認