JBoss 4.2.3.GAには、transfer-encoding:chunkedで生成されているJSP応答があります。これにより、Netscalerロードバランサーは、JSPによって生成されたHTMLが可変コンテンツであると見なされるため、キャッシュされないようになっています。
しかし、max-ageが設定されている場合、転送エンコーディングに関係なく、リクエストはキャッシュされるべきではありませんか?
JSPを固定長で返すようにすることにしました(transfer-encodingがfixedに設定されるようにcontent-lengthを設定します)。。私は次のテストを行いました:
大量のコンテンツを含むtest.jspファイルを使用してJboss4.2.3.GAWebアプリケーションを作成しました。サーバーから転送されたこのJSPファイルをtransfer-encoding:chunkedでデプロイしたときに確認しました。コンテンツの全体のサイズは71.00Kbでした。
test.jspにアクセスして、さまざまな設定を試しました。
response.setContentLength(90000);
response.setBufferSize(90000);
test.jspがまだtransfer-encoding:chunkedであることを確認しました。
また、jboss-4.2.3.GA \ server \ default \ deploy \ jboss-web.deployer\server.xmlを編集して設定してみました。
<Connector ... bufferSize="90000" socketBuffer="90000" />
検証済みのtest.jspはまだtransfer-encoding:chunkedです。
私はここで何が間違っているのですか?このコンテンツをキャッシュするにはどうすればよいですか?