既知の MIME の種類に対して [ファイルのダウンロード] ダイアログ ボックスを生成する方法
警告
廃止されたサポート対象外の Internet Explorer 11 デスクトップ アプリケーションは、特定のバージョンのWindows 10の Microsoft Edge 更新プログラムを通じて完全に無効になっています。 詳細については、「 Internet Explorer 11 デスクトップ アプリの廃止に関する FAQ」を参照してください。
この記事では、Microsoft Edge および Internet Explorer で既知の MIME の種類に対して [ファイルのダウンロード ] ダイアログ ボックスを生成する方法について説明します。
元の製品バージョン: Internet Explorer 11、Internet Explorer 10、Internet Explorer 8、Internet Explorer 7、Microsoft Edge
元の KB 番号: 260519
概要
Web サーバーからドキュメントを提供する場合は、ブラウザーで開かなくても、ファイルをユーザーのディスクに直接保存するようにユーザーにすぐに求めるメッセージが表示される場合があります。 ただし、Microsoft Word (application/ms-word) などの既知の MIME (多目的インターネット メール拡張機能) の種類の場合、既定の動作は Internet Explorer でドキュメントを開きます。
content-disposition ヘッダーを使用して、この既定の動作をオーバーライドできます。 その形式は次のとおりです。
Content-disposition: attachment; filename=fname.ext
詳細
Content-disposition
は MIME プロトコルの拡張機能であり、添付ファイルの表示方法について MIME ユーザー エージェントに指示します。 の有効な値 content-disposition
の範囲については、コメント要求 (RFC) 1806 で説明します (この記事の 「参照」セクションを 参照してください)。 この記事では、添付ファイルの引数に焦点を当て、ファイルをインラインで保存するのではなく、ユーザー エージェント (この場合は Internet Explorer) にディスクに保存するように指示します。
Internet Explorer は、ヘッダーを受け取ると、ファイル名ボックスにヘッダーで指定されたファイル名が自動的に設定される [ファイルの ダウンロード ] ダイアログ ボックスを生成します。 これは設計上の点に注意してください。保存場所の入力を求めずに、この機能を使用してドキュメントをユーザーのコンピューターに保存する方法はありません。
Internet Explorer を使用してファイルのヘッダーを content-disposition
指定するには、動的および静的の 2 つの方法があります。
ヘッダーを動的に適用するには、ドキュメントをブラウザーに書き込む Active Server Pages (ASP) ファイルを作成します。 メソッドを Response.AddHeader
使用してヘッダーを content-disposition
追加します。 例:
Response.AddHeader "content-disposition","attachment; filename=fname.ext"
この手法は、サーバー上のドキュメント ストア (特に Web ルートの外部に存在するもの) を保護する場合に最適です。
ヘッダーを静的に適用するには、インターネット Service Managerでドキュメントを右クリックし、[プロパティ] を選択します。 [ HTTP ヘッダー ] タブを選択し、そこにヘッダーを content-disposition
入力します。 これは、システム上のいくつかのファイルにのみ適用 content-disposition
し、ASP のオーバーヘッドを必要としない場合に最適です。
関連情報
の詳細 content-disposition
については、「 コメントの要求 (RFC) 1806」を参照してください。
フィードバック
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:フィードバックの送信と表示