SSL 接続時に PDF を IE6 で表示できない現象が発生しました。どうやら、IE6 のバグが原因のようです。

[IE] HTTPS URL から Office ドキュメントまたは PDF ファイルを開こうとすると “ダウンロードできません” エラーが発生
http://support.microsoft.com/kb/812935/ja

原因は HTTP ヘッダ内に

Pragma: no-cache;

があると、キャッシュを見に行ってしまうらしい。

この Pragma: no-cache; さえなければ問題は解決できるようだ。
先日紹介した mPDF で作成した PDF を PHP で出力していたので、その出力の前に Pragma ヘッダを送ってやることにしたら、無事解決しました。

include("mpdf/mpdf.php");
$mpdf=new mPDF('sjis', 'A4');
$mpdf->WriteHTML($html);
header("Pragma:");
$mpdf->Output();

しかし、いいかげん IE6 は対象ブラウザから外して欲しいですね。

関連する投稿