From f0bd8e6531756b151c051f8ce5099d59408e71db Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 19 Mar 2013 09:25:36 +0400 Subject: rework image caching to work without permanent article content rewriting (refs #582) --- image.php | 35 ++++++++++++++++++++++++++++------- 1 file changed, 28 insertions(+), 7 deletions(-) (limited to 'image.php') diff --git a/image.php b/image.php index 91490ea22..cccda64b7 100644 --- a/image.php +++ b/image.php @@ -4,14 +4,35 @@ require_once "config.php"; - $url = base64_decode($_GET['url']); + // backwards compatible wrapper for old-style image caching + /* if (isset($_GET['url'])) { + $url = base64_decode($_GET['url']); - $filename = CACHE_DIR . '/images/' . sha1($url) . '.png'; + $filename = CACHE_DIR . '/images/' . sha1($url) . '.png'; - if (file_exists($filename)) { - header("Content-type: image/png"); - echo file_get_contents($filename); - } else { - header("Location: $url"); + if (file_exists($filename)) { + header("Content-type: image/png"); + echo file_get_contents($filename); + } else { + header("Location: $url"); + } + + return; + } */ + + @$hash = basename($_GET['hash']); + + if ($hash) { + + $filename = CACHE_DIR . '/images/' . $hash . '.png'; + + if (file_exists($filename)) { + header("Content-type: image/png"); + echo file_get_contents($filename); + } else { + header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found"); + echo "File not found."; + } } + ?> -- cgit v1.2.3-54-g00ecf