0

Tomcat を実行している Web サーバーにファイルをアップロードするためにSWFUploadを使用しています。アップロードが完了した後、ユーザーはサーバーからエラーを受け取り始めました。ログは、サーバー上にファイルのコンテンツがないことを示しており、デバッグ モードで実行されている SWFUpload は、ファイルの送信に問題があるとは考えていないようです。

この問題は、次のすべてに該当する場合にのみ発生します。

  • クライアントは SSL を使用します
  • クライアントは Windows 7 上にあります
  • クライアントは Flash アップローダーを使用します。HTML アップロードは問題なく動作します。
  • クライアントは IE を使用
4

1 に答える 1

2

最初は、これは IE の問題に関連しているのではないかと疑い、ヘッダーPragmaCache-Controlヘッダーを設定して SWF ファイルのクライアント側のキャッシュを防止しました。アップロード時に問題を観察しただけだったので、混乱しました。ダウンロードは影響を受けませんでした。

結局、この問題は、2012 年 1 月にリリースされたInternet Explorer のセキュリティ更新プログラムで発生したようです。この更新プログラムは、誰かが SSL 3.0/TLS 1.0 で暗号化されたトラフィックを解読できる脆弱性に対処することを目的としていました。

Microsoft の回避策は、サーバーが TLS 1.1 をサポートしていることを確認し、IE で TLS 1.1 のサポートを有効にすることです。TLS 1.0 を無効にすると、IE が SSL 3.0 にフォールバックし、問題も解決したように見えますが、理想的ではありません。

Java は、JRE 1.7 の時点で TLS 1.1 のみをサポートしています。Tomcat は SSL に JSSE ライブラリを使用します。すでに TLS 1.1 をサポートしているネイティブの Tomcat ライブラリを使用している場合を除き、TLS 1.1 を取得するには、必ず JRE 1.7 および Tomcat 7 にアップグレードしてください。

Apache と OpenSSL を使用している方への最後の注意: OpenSSL 0.9.x は TLS 1.0 のみをサポートしているようです。代わりに GnuTLS を使用してApache をビルドできると聞いています。これにより、TLS 1.1+ が提供されるはずです。

追加参照: http://www.thehijax.com/?p=72

于 2012-08-08T00:13:39.403 に答える