0 返信 最新の回答 日時: Sep 22, 2004 5:40 PM ユーザー:(kono-11751352)

    Yet Another IE で空白ページ

      Windows2000/IE5.5 SP1/AcrobatReader 5.0 です。
      (環境は会社のものであるため、version up などできないのですが。。)

      イントラのシステムですが、サーバサイドで動的にPDFファイルを生成した後、そのファイルを object タグで表示する html を生成してブラウザに返します。
      IEがそのページを表示しようとすると、間歇的に object 部分が空白となってしまいます。ついでに、プラグインがハング状態になります。
      (5回に1回程度の頻度。なので、5回に4回は正常に表示されます)。

      空白ページとなる場合も PDF ファイルは確実に生成されていますし、servlet/cgi などで stream 形式でダウンロードするわけではないので Content-Length の問題でもありません。
      また、PDFファイルは毎回異なる名前で生成するため、キャッシュ関連の問題でもありません。

      で、ネットワークをキャプチャしてみたところ、正常に動作するときは以下の動作となっています。
      IE からPDF ダウンロードのリクエスト
      GET /foo/bar.pdf HTTP/1.1
      Web Server よりレスポンス
      HTTP/1.1 200 OK
      Content-Type: application/pdf
      (コンテンツ)
      PDFの中身の転送
      IE が、数パケット受け取ったところで、リセット発生(TCPレベル)
      IE より、再度PDF ダウンロードのリクエスト
      GET /foo/bar.pdf HTTP/1.1
      Range: bytes=98505-99528, 91337-98504, ...
      マルチパートでのダウンロード要求となっている。
      Web Server よりレスポンス
      HTTP/1.1 206 Partial Content
      Content-Type: multipart/byteranges
      Accept-Ranges: bytes
      (コンテンツ)
      PDFの分割された中身の転送
      表示完了

      ところが、異常となるケースでは、以下のようにサーバ側に multipart でのダウンロード要求が来ません。
      IE からPDF ダウンロードのリクエスト
      GET /foo/bar.pdf HTTP/1.1
      Web Server よりレスポンス
      HTTP/1.1 200 OK
      Content-Type: application/pdf
      (コンテンツ)
      PDFの中身の転送
      空白ページ
      問題が発生したときに、キャプチャしたネットワークトレースよりPDFファイルを復元して、
      そのファイルを AcrobatReader で開くと正しく表示されましたので、コンテンツの問題ではなさそうです。
      なお、PDFファイルのサイズは100KB程度です。

      multipart のダウンロード要求が来ないのが問題なのか、それとも既にプラグインがいかれているのか、、
      よくわかりません。

      何らか情報あれば教えてください。

      なお、他のバージョンの OS/IE/AdobeReader などでも検証したいのですが、
      それが許されない環境のため確認できていません。

      以上、よろしくお願いいたします。