Paroday

Paroday:ニュースやアニメのレビュー、FC2ブログのテンプレート・プラグインなどを配信しています。

もしかして Parody ではありませんか? yes

IE8以下でHTMLを含むtxtファイルを開くとHTMLで表示されるのを防ぐ

  • 2011-03-06 日 00:49
  • Web
  • hatena  拍手

txt

 初期設定のIE6~8(XP SP2~)はセキュリティ設定において、拡張子ではなく、内容によってファイルを開く有効になっているため、txtファイルにHTMLのコードがあれば、拡張子がtxtでも、HTMLとして開きます。

 http://blog-imgs-46.fc2.com/p/a/r/paro2day/ie-html.txt

 したがって、txtファイルを開くとスクリプトが実行されるなどの可能性があります。

 FirefoxやChrome、Opera、Safariなどはtxtファイルとして認識します。IEに依存しているSleipnir2はIEと同じ結果になります。

 IE9では、text/planeはMIMEスニッフィング(ファイルの種類を判別するプロセス)されないため、txtファイルとして表示されるようです。また、レスポンスヘッダに X-Content-Type-Options: nosniff を送ると、IE8でもMIMEスニッフィングは機能しなくなります。

 IEBlog : MIME-Handling Changes in Internet Explorer


 IE8以下はセキュリティ設定のレベルを[]にすると無効になりますが(バージョン別セキュリティ既定値一覧表)、個別に変更するときは次のようにします。

  1. ブラウザメニューの[ツール]から[インターネットオプション]を選択。
  2. タブの[セキュリティ]から[レベルのカスタマイズ]を選択。
  3. 拡張子ではなく、内容によってファイルを開くの設定を[無効にする]に変更、OK。

    txt

  4. ブラウザを再起動

 以上で、ie-html.txtを開くとtxtファイルとして解釈されるようになります。

txt

 このときページ上部に制限されるコンテンツの情報バーをクリックして、[制限されたコンテンツを表示]する(開く)と、HTMLとして解釈されます。

txt


 ページコンテンツによってはこの設定を無効にしたことで閲覧できなくなるものがあるかもしれません。

 IE9からは設定項目の表記が「拡張子ではなく、内容によってファイルを開く」から「MIMEスニッフィングを有効にする」に変わるらしいです。

関連記事
  1. comment
  2. text/plane 2012-04-09 06:28 No.1125 #-URL

    テキストの飛行機

コメント

Icon ※必須 :
Pass  ※入力した英数字を識別コードとしてNoに表示(123→LkZag.iM)

トラックバック

http://paro2day.blog122.fc2.com/tb.php/675-c1bdb6af

  1. trackback