image cache: send files as content-disposition: attachment; add .png suffix to image urls
This commit is contained in:
parent
60e97d9e63
commit
0442cbb6c1
|
@ -1051,9 +1051,11 @@ class Handler_Public extends Handler {
|
||||||
|
|
||||||
if ($hash) {
|
if ($hash) {
|
||||||
|
|
||||||
$filename = CACHE_DIR . '/images/' . $hash . '.png';
|
$filename = CACHE_DIR . '/images/' . $hash;
|
||||||
|
|
||||||
if (file_exists($filename)) {
|
if (file_exists($filename)) {
|
||||||
|
header("Content-Disposition: attachment; filename=\"".basename($filename)."\"");
|
||||||
|
|
||||||
/* See if we can use X-Sendfile */
|
/* See if we can use X-Sendfile */
|
||||||
$xsendfile = false;
|
$xsendfile = false;
|
||||||
if (function_exists('apache_get_modules') &&
|
if (function_exists('apache_get_modules') &&
|
||||||
|
|
|
@ -903,13 +903,15 @@
|
||||||
$entry->setAttribute('rel', 'noopener noreferrer');
|
$entry->setAttribute('rel', 'noopener noreferrer');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($entry->nodeName == 'img') {
|
||||||
|
|
||||||
if ($entry->hasAttribute('src')) {
|
if ($entry->hasAttribute('src')) {
|
||||||
$src = rewrite_relative_url($site_url, $entry->getAttribute('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)) {
|
if (file_exists($cached_filename)) {
|
||||||
$src = SELF_URL_PATH . '/public.php?op=cached_image&hash=' . sha1($src);
|
$src = SELF_URL_PATH . '/public.php?op=cached_image&hash=' . sha1($src) . '.png';
|
||||||
|
|
||||||
if ($entry->hasAttribute('srcset')) {
|
if ($entry->hasAttribute('srcset')) {
|
||||||
$entry->removeAttribute('srcset');
|
$entry->removeAttribute('srcset');
|
||||||
|
@ -923,7 +925,6 @@
|
||||||
$entry->setAttribute('src', $src);
|
$entry->setAttribute('src', $src);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($entry->nodeName == 'img') {
|
|
||||||
if ($entry->hasAttribute('src')) {
|
if ($entry->hasAttribute('src')) {
|
||||||
$is_https_url = parse_url($entry->getAttribute('src'), PHP_URL_SCHEME) === 'https';
|
$is_https_url = parse_url($entry->getAttribute('src'), PHP_URL_SCHEME) === 'https';
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue