]> git.wh0rd.org - tt-rss.git/blob - image.php
Merge pull request #403 from dzaikos/patch-leading-space-urls
[tt-rss.git] / image.php
1 <?php
2 set_include_path(dirname(__FILE__) ."/include" . PATH_SEPARATOR .
3 get_include_path());
4
5 require_once "config.php";
6
7 // backwards compatible wrapper for old-style image caching
8 /* if (isset($_GET['url'])) {
9 $url = base64_decode($_GET['url']);
10
11 $filename = CACHE_DIR . '/images/' . sha1($url) . '.png';
12
13 if (file_exists($filename)) {
14 header("Content-type: image/png");
15 echo file_get_contents($filename);
16 } else {
17 header("Location: $url");
18 }
19
20 return;
21 } */
22
23 @$hash = basename($_GET['hash']);
24
25 if ($hash) {
26
27 $filename = CACHE_DIR . '/images/' . $hash . '.png';
28
29 if (file_exists($filename)) {
30 /* See if we can use X-Sendfile */
31 $xsendfile = false;
32 if (function_exists('apache_get_modules') &&
33 array_search('mod_xsendfile', apache_get_modules()))
34 $xsendfile = true;
35
36 if ($xsendfile) {
37 header("X-Sendfile: $filename");
38 header("Content-type: application/octet-stream");
39 header('Content-Disposition: attachment; filename="' . basename($filename) . '"');
40 } else {
41 header("Content-type: image/png");
42 $stamp = gmdate("D, d M Y H:i:s", filemtime($filename)). " GMT";
43 header("Last-Modified: $stamp", true);
44 readfile($filename);
45 }
46 } else {
47 header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found");
48 echo "File not found.";
49 }
50 }
51
52 ?>