image cache: send files as content-disposition: attachment; add .png suffix to image urls

This commit is contained in:
Andrew Dolgov 2017-02-04 11:32:24 +03:00
parent 60e97d9e63
commit 0442cbb6c1
2 changed files with 18 additions and 15 deletions

View File

@ -1051,9 +1051,11 @@ class Handler_Public extends Handler {
if ($hash) {
$filename = CACHE_DIR . '/images/' . $hash . '.png';
$filename = CACHE_DIR . '/images/' . $hash;
if (file_exists($filename)) {
header("Content-Disposition: attachment; filename=\"".basename($filename)."\"");
/* See if we can use X-Sendfile */
$xsendfile = false;
if (function_exists('apache_get_modules') &&

View File

@ -903,27 +903,28 @@
$entry->setAttribute('rel', 'noopener noreferrer');
}
if ($entry->hasAttribute('src')) {
$src = rewrite_relative_url($site_url, $entry->getAttribute('src'));
if ($entry->nodeName == 'img') {
$cached_filename = CACHE_DIR . '/images/' . sha1($src) . '.png';
if ($entry->hasAttribute('src')) {
$src = rewrite_relative_url($site_url, $entry->getAttribute('src'));
if (file_exists($cached_filename)) {
$src = SELF_URL_PATH . '/public.php?op=cached_image&hash=' . sha1($src);
$cached_filename = CACHE_DIR . '/images/' . sha1($src) . '.png';
if ($entry->hasAttribute('srcset')) {
$entry->removeAttribute('srcset');
if (file_exists($cached_filename)) {
$src = SELF_URL_PATH . '/public.php?op=cached_image&hash=' . sha1($src) . '.png';
if ($entry->hasAttribute('srcset')) {
$entry->removeAttribute('srcset');
}
if ($entry->hasAttribute('sizes')) {
$entry->removeAttribute('sizes');
}
}
if ($entry->hasAttribute('sizes')) {
$entry->removeAttribute('sizes');
}
$entry->setAttribute('src', $src);
}
$entry->setAttribute('src', $src);
}
if ($entry->nodeName == 'img') {
if ($entry->hasAttribute('src')) {
$is_https_url = parse_url($entry->getAttribute('src'), PHP_URL_SCHEME) === 'https';