From 8abf6ae9cbffce5e529b6dbfd8fd02f9ffb89578 Mon Sep 17 00:00:00 2001 From: Aaron Sherber Date: Sat, 9 Mar 2024 16:27:19 -0500 Subject: [PATCH] Always add cache control headers --- lib/Controller.php | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/lib/Controller.php b/lib/Controller.php index 443d4de4..01000071 100644 --- a/lib/Controller.php +++ b/lib/Controller.php @@ -143,6 +143,8 @@ class Controller break; } + $this->_setCacheHeaders(); + // output JSON or HTML if ($this->_request->isJsonApiCall()) { header('Content-type: ' . Request::MIME_JSON); @@ -177,6 +179,21 @@ class Controller setcookie('lang', $lang, 0, '', '', true); } } + /** + * Turn off browser caching + * + * @access private + */ + private function _setCacheHeaders() + { + // set headers to disable caching + $time = gmdate('D, d M Y H:i:s \G\M\T'); + header('Cache-Control: no-store, no-cache, no-transform, must-revalidate'); + header('Pragma: no-cache'); + header('Expires: ' . $time); + header('Last-Modified: ' . $time); + header('Vary: Accept'); + } /** * Store new paste or comment @@ -343,13 +360,6 @@ class Controller */ private function _view() { - // set headers to disable caching - $time = gmdate('D, d M Y H:i:s \G\M\T'); - header('Cache-Control: no-store, no-cache, no-transform, must-revalidate'); - header('Pragma: no-cache'); - header('Expires: ' . $time); - header('Last-Modified: ' . $time); - header('Vary: Accept'); header('Content-Security-Policy: ' . $this->_conf->getKey('cspheader')); header('Cross-Origin-Resource-Policy: same-origin'); header('Cross-Origin-Embedder-Policy: require-corp');