『このインターネットのサイトを開くことができません。』と出て、ファイルをダウンロードできない

Internet Explorerで次のようなエラーが出ることがあります。


【ファイル名】をダウンロードできません。
このインターネットのサイトを開くことができません。要求されたサイトが使用できないか、見つけることができません。後でもう一度やり直してください。

これはMicrosoftでも既知の問題で下記のページにて報告されています。
http://support.microsoft.com/default.aspx?scid=kb;ja;436605

対象となるバージョンは
Microsoft Internet Explorer 5.0
Microsoft Internet Explorer 6.0
Microsoft Internet Explorer 6.0 SP1
と書かれていますが、
Microsoft Internet Explorer 7
Microsoft Internet Explorer 8
でも発生します。

これはSSLのサイトで、既に Cache-Control:no-cacheなどキャッシュを保存しない no-cache ヘッダが出力されたページで発生します。

問題となるのが下記の3つが重なったときです。
(1) SSLを使用している。
(2) Content-Disposition:attachmentを使用している。
(3) キャッシュを保存しないようなヘッダーが出力されている。

対応方法

サイト閲覧者側での対応は難しく、Firefoxなどの別のブラウザを使うなどして対応するのがいいと思います。
Internet Explorerでダウンロードできるようにするには、サイト製作者側での修正が必要となります。

SSLを使用しないというのは難しいので、Content-Disposition:inlineを使用するか、no-cache ヘッダを出力せずpublicなどにする、という対処方法があります。

PHPでは

header('Pragma: public');

または

session_cache_limiter('public');

を書きます。

関連記事

スポンサーリンク

LIMIT句 取り出すデータの数や開始位置の条件を追加する

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る