私は Play と Java でアプリケーションを実行しています。画像、CSS、JavaScript など、さまざまな種類のアセットの有効期限を設定する必要があります。
conf/routes ファイルに次のものがあります。
GET /assets/*file controllers.Assets.at(path="/public", file)
で 1 つの個別のファイルの有効期限を設定できましたapplication.conf
。
"assets.cache./public/js/pages/validation.js"="max-age=7200"
しかし、フォルダ全体に設定することはできません。私が試してみました
"assets.cache./public/js/pages/*.js"="max-age=7200"
"assets.cache./public/js/pages/*"="max-age=7200"
しかし、何も起こりません。/js/pages フォルダー内のすべてに有効期限を設定したいと考えていました。
私も試してみました
assets.defaultCache="max-age=7200"
http://www.jamesward.com/2014/04/29/optimizing-static-asset-loading-with-play-frameworkの指示に従って
としても
http.cacheControl=7200
ドキュメントごとhttp://www.playframework.com/documentation/1.2.3/configuration#http
そして、これらのどれも機能しません。上記の変更は、application.conf で行われました。
有効期限を設定したいルートの response() を変更するコントローラーを定義することで、同じことを行う方法があることを知っています。 遠い将来 静的コンテンツの Expires ヘッダー
しかし、application.conf ファイルからアセットの有効期限を設定する方法を知りたいです。
私たちのアプリケーションはS3 Linux インスタンスで実行されているため、サーバーで有効期限を設定することはできません。
ありがとうございました!