Commit 0442cbb6 authored by Andrew Dolgov's avatar Andrew Dolgov

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

parent 60e97d9e
......@@ -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') &&
......
......@@ -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') {
if ($entry->hasAttribute('src')) {
$src = rewrite_relative_url($site_url, $entry->getAttribute('src'));
$cached_filename = CACHE_DIR . '/images/' . sha1($src) . '.png';
$cached_filename = CACHE_DIR . '/images/' . sha1($src) . '.png';
if (file_exists($cached_filename)) {
$src = SELF_URL_PATH . '/public.php?op=cached_image&hash=' . sha1($src);
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('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';
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment