From d4aeaef63c366dc1d5e147d777f1c04d8d5aae57 Mon Sep 17 00:00:00 2001 From: Urban Müller Date: Tue, 26 Aug 2014 19:15:57 +0200 Subject: 30 day expire if checksum is present --- itjs.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'itjs.php') diff --git a/itjs.php b/itjs.php index 3fc5441..32267da 100644 --- a/itjs.php +++ b/itjs.php @@ -65,12 +65,13 @@ else if (!it::match('\.html$', $file)) header("Content-Type: application/x-javascript; charset=$charset"); } -@header("Etag: alwaysvalid"); +@header("Etag: alwaysvalid"); # we have checksums in the url. client should always keep the version he downloaded along with the html if (!preg_match('/Opera/', $_SERVER['HTTP_USER_AGENT']) && it::is_live() && !$_REQUEST['retry']) { - header("Cache-Control: max-age=604800, private"); # proxies should not cache since contents of same url can differ between browsers - header("Expires: " . gmdate("D, d M Y H:i:s", time()+604800). " GMT"); + $keeptime = $_REQUEST['s'] || $_REQUEST['c'] ? 86400*30 : 900; # long expire if checksum present + header("Cache-Control: max-age=$keeptime, private"); # proxies should not cache since contents of same url can differ between browsers + header("Expires: " . gmdate("D, d M Y H:i:s", time() + $keeptime). " GMT"); } $data = itjs::strip($data); -- cgit v1.2.3