4 返信 最新の回答 日時: Aug 19, 2002 2:58 PM ユーザー:(tenkyu)

    パスワード付きだと2度Requestされる

      パスワード付きの暗号化されたPDFファイルをWebで閲覧すると、
      2度のRequestがWebサーバに要求されるようですが、これは仕様なのでしょうか?

      また、特定のクライアントにおいて、2度目の
      Requestが飛ばずに、パスワード入力ダイアログが開かず、白い画面が表示される事象が
      発生します。ただしこれは必ずなるわけではなく、数回〜十数回に一度発生する模様です。
      この事象を回避し、必ずパスワード入力ダイアログを表示する方法はないでしょうか?
        • 1. Re: パスワード付きだと2度Requestされる
          レスの付きにくいタイプの投稿ですね。
          まず操作環境など周辺情報がまったく不明です。OS、Acrobat(Acrobat Reader)、ブラウザ、Webサーバーなどの種類やバージョンが全く書かれていません。こういった基本情報は必須で付けてください。
           
           
          ##パスワード付きの暗号化されたPDFファイル
          PDFにはマスターパスワードとユーザーパスワードの2種類がありますが、この場合はどちらを指していますか?

          ##2度のRequestがWebサーバに要求されるようです
          これは何を解析して判明したことなのでしょうか? また「2度のRequest」とはどのような事象を指しているのでしょうか?

          ##特定のクライアント
          「特定」されているユーザですから、そのユーザー環境を記述することはできないのでしょうか?

          ##パスワード入力ダイアログが開かず、白い画面が表示される
          この後に何か回復操作(再読み込みなど)はしないのでしょうか? いったん「白い画面」が表示されてしまうと、ブラウザがフリーズしてしまうなどの障害が発生するのでしょうか?

          下記サポート文書(一部抜粋)は、Acrobat(Acrobat Reader)4.0をInternet Explorerで使う場合に、パスワード保護されたPDFを開いてもパスワードを聞いてこない場合があるというものです(インストール時のReadme文書にも同記載があるはず)。

          -------------------------------------------------------
          サポート文書番号 218305 Acrobat 4.0(Win):
          [Readme] トラブルシューティング - 表示(1999年4月26日更新)
          ---Windows版Acrobat 4.0をInternet Explorerと一緒に使う
          Acrobat 4.0またはAcrobat Reader 4.0をInternet Explorerと一緒に使うときは、次の事項に注意してください。
          * パスワード保護されたPDFファイルをInternet Explorerで一度開くと、次に同じファイルを開くときにパスワードを入力するようにメッセージが表示されない場合があります。これは、ファイルがキャッシュに入っているためです。

          -------------------------------------------------------

          ブラウザをInternet Explorer以外にするか、あるいはキャッシュの設定方法を変えるというのもあるでしょう。

          Internet Explorer6.0の場合、[全般]→[インターネット一時ファイル]→[設定]で「保存しているページと新しいバージョンの確認」の個所を、[ページを表示するごとに確認する]にチェ ックすれば解消するかもしれません。
           
          • 2. Re: パスワード付きだと2度Requestされる
            Level 1
            レスありがとうございます。
            最初の投稿で詳細にかかずに申しわけありませんでした。

            動作環境
            OS:Windows2000とXPで確認(1台ずつ)
            Acrobat:Acrobat Reader5.0
            ブラウザ:IE6.0と5.5で確認(1台ずつ)
            Webサーバ:Windows2000サーバ+IIS5.0

            パスワード
            マスタとユーザの両方が設定されています

            処理:
            HTML上のクライアントスクリプトで、Clickイベント時に新規Windowを開き、ASPを実行します。
            そのASPでDBにBinaryとして保存されたPDFファイルを
            Response.BinaryWriteしています。

            横取り丸を利用して確認すると、一度のClickで2度のRequestがサーバに送られていました。

            特定のクライアント:
            上に書いたように、OS、IEなどは特定できないのですが、
            現在2つのクライアントマシンでのみこの現象が出ます。

            白い画面:
            白い画面が表示されても再読込すると(2度のRequestが実行されて)パスワード入力が
            出来るようになります。

            以上です。
            • 3. Re: パスワード付きだと2度Requestされる
              解決方法ではありません。
              当方でも再現したので何らかの参考になれば、、、。

              クライアント
              IE5.5
              Acrobat5.0
              Win2000

              サーバー
              Kondara/MNU Linux WebCluster2000 +Apache1.3.26

              PDFはマスタ・ユーザーパスワード設定

              現象:
              IE5.5の場合、サーバー上にあるPDFファイルへのURLを指定すると、
              GETリクエストが2回送信される(アクセスログで確認。ステータスコード200)
              Netscape4.78では再現せず。「白い画面」も再現しませんでした。

              ただし、キャッシュが残っていると、GETリクエストが2回送信されない。
              (しかしステータスコードが304になっている)
              またNetscapeだと、キャッシュが残っている場合はサーバーにアクセスしていない?
              (アクセスログに記録されない)

              うちのLinuxでも再現したので他の環境でも同じ現象が?
              そうだとするとAcrobatの仕様になるのかもしれませんね。
              • 4. Re: パスワード付きだと2度Requestされる
                Level 1
                こんにちは。元投稿を出したtenkyuです。
                結局この事象ですが、以下の方法により回避することができました。

                > Response.Expire = -1

                エラーが発生していたときは
                Response.Expire = 0
                でした。

                で、白い画面が発生するのは、たまたまExpireの値が秒をまたがっていた時のようです。

                ただ、実は他の問題が発生したのですが、それは別に投稿します。