mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-04-02 01:52:10 +09:00
Change cache-busting query string format from ?YYYYMMDDHHMMSS to ?t=UnixTime
- 날짜, 유닉스 타임스탬프, 16진수(CKEditor) 등 여러 가지 포맷을 혼용하고 있던 캐시 방지용 쿼리스트링의 형태를 "유닉스 타임스탬프"로 통일 - 표준 시간대 처리 등 은근히 많은 자원을 소모하는 date() 함수를 사용하지 않음 - t=를 붙여서 정상적인 쿼리스트링 구조가 나오도록 하여, 웹방화벽이나 CDN 등에서 문제를 일으킬 가능성을 줄임 - 덤으로, 길이도 2바이트씩 짧아짐
This commit is contained in:
parent
68ee78f1f8
commit
c8638d2548
9 changed files with 20 additions and 20 deletions
|
|
@ -2841,7 +2841,7 @@ class Context
|
|||
list($width, $height) = getimagesize(\RX_BASEDIR . $filename);
|
||||
}
|
||||
self::$_instance->meta_images[] = array(
|
||||
'filepath' => $filename . '?' . date('YmdHis', filemtime(\RX_BASEDIR . $filename)),
|
||||
'filepath' => $filename . '?t=' . filemtime(\RX_BASEDIR . $filename),
|
||||
'width' => $width,
|
||||
'height' => $height,
|
||||
);
|
||||
|
|
|
|||
|
|
@ -246,7 +246,7 @@ class DisplayHandler extends Handler
|
|||
{
|
||||
case 'HTML':
|
||||
$json_options = defined('JSON_PRETTY_PRINT') ? (JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE) : 0;
|
||||
$panel_script = sprintf('<script src="%s%s?%s"></script>', RX_BASEURL, 'common/js/debug.js', filemtime(RX_BASEDIR . 'common/js/debug.js'));
|
||||
$panel_script = sprintf('<script src="%s%s?t=%d"></script>', RX_BASEURL, 'common/js/debug.js', filemtime(RX_BASEDIR . 'common/js/debug.js'));
|
||||
$panel_script .= "\n<script>\nvar rhymix_debug_content = " . json_encode($data, $json_options) . ";\n</script>";
|
||||
$body_end_position = strrpos($output, '</body>') ?: strlen($output);
|
||||
$output = substr($output, 0, $body_end_position) . "\n$panel_script\n" . substr($output, $body_end_position);
|
||||
|
|
|
|||
|
|
@ -466,7 +466,7 @@ class FrontEndFileHandler extends Handler
|
|||
$url = $file->filePath . '/' . $file->fileName;
|
||||
if (!$file->isExternalURL && is_readable($file->fileFullPath))
|
||||
{
|
||||
$url .= '?' . date('YmdHis', filemtime($file->fileFullPath));
|
||||
$url .= '?t=' . filemtime($file->fileFullPath);
|
||||
}
|
||||
$result[] = array('file' => $url, 'media' => $file->media);
|
||||
}
|
||||
|
|
@ -486,7 +486,7 @@ class FrontEndFileHandler extends Handler
|
|||
$concat_content = '@charset "UTF-8";' . "\n\n" . preg_replace('/@charset\s*[\'"][a-z0-9-]+[\'"];\s*/i', '', $concat_content);
|
||||
Rhymix\Framework\Storage::write(\RX_BASEDIR . $concat_filename, $concat_content);
|
||||
}
|
||||
$concat_filename .= '?' . date('YmdHis', filemtime(\RX_BASEDIR . $concat_filename));
|
||||
$concat_filename .= '?t=' . filemtime(\RX_BASEDIR . $concat_filename);
|
||||
$result[] = array('file' => \RX_BASEURL . $concat_filename, 'media' => 'all');
|
||||
}
|
||||
}
|
||||
|
|
@ -500,7 +500,7 @@ class FrontEndFileHandler extends Handler
|
|||
$url = $file->filePath . '/' . $file->fileName;
|
||||
if (!$file->isExternalURL && is_readable($file->fileFullPath))
|
||||
{
|
||||
$url .= '?' . date('YmdHis', filemtime($file->fileFullPath));
|
||||
$url .= '?t=' . filemtime($file->fileFullPath);
|
||||
}
|
||||
$result[] = array('file' => $url, 'media' => $file->media);
|
||||
}
|
||||
|
|
@ -572,7 +572,7 @@ class FrontEndFileHandler extends Handler
|
|||
$url = $file->filePath . '/' . $file->fileName;
|
||||
if (!$file->isExternalURL && is_readable($file->fileFullPath))
|
||||
{
|
||||
$url .= '?' . date('YmdHis', filemtime($file->fileFullPath));
|
||||
$url .= '?t=' . filemtime($file->fileFullPath);
|
||||
}
|
||||
$result[] = array('file' => $url);
|
||||
}
|
||||
|
|
@ -590,7 +590,7 @@ class FrontEndFileHandler extends Handler
|
|||
{
|
||||
Rhymix\Framework\Storage::write(\RX_BASEDIR . $concat_filename, Rhymix\Framework\Formatter::concatJS($concat_files, $concat_filename));
|
||||
}
|
||||
$concat_filename .= '?' . date('YmdHis', filemtime(\RX_BASEDIR . $concat_filename));
|
||||
$concat_filename .= '?t=' . filemtime(\RX_BASEDIR . $concat_filename);
|
||||
$result[] = array('file' => \RX_BASEURL . $concat_filename);
|
||||
}
|
||||
}
|
||||
|
|
@ -604,7 +604,7 @@ class FrontEndFileHandler extends Handler
|
|||
$url = $file->filePath . '/' . $file->fileName;
|
||||
if (!$file->isExternalURL && is_readable($file->fileFullPath))
|
||||
{
|
||||
$url .= '?' . date('YmdHis', filemtime($file->fileFullPath));
|
||||
$url .= '?t=' . filemtime($file->fileFullPath);
|
||||
}
|
||||
$result[] = array('file' => $url);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ class Icon
|
|||
$filename = 'files/attach/xeicon/' . ($domain_srl ? ($domain_srl . '/') : '') . $icon_name;
|
||||
if (Storage::exists(\RX_BASEDIR . $filename))
|
||||
{
|
||||
return \RX_BASEURL . $filename . '?' . date('YmdHis', filemtime(\RX_BASEDIR . $filename));
|
||||
return \RX_BASEURL . $filename . '?t=' . filemtime(\RX_BASEDIR . $filename);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -64,7 +64,7 @@ class Icon
|
|||
{
|
||||
$width = $info['width'];
|
||||
$height = $info['height'];
|
||||
return \RX_BASEURL . $info['filename'] . '?' . date('YmdHis', filemtime(\RX_BASEDIR . $info['filename']));
|
||||
return \RX_BASEURL . $info['filename'] . '?t=' . filemtime(\RX_BASEDIR . $info['filename']);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -783,7 +783,7 @@ class CommentItem extends BaseObject
|
|||
}
|
||||
else
|
||||
{
|
||||
return $thumbnail_url . '?' . date('YmdHis', filemtime($thumbnail_file));
|
||||
return $thumbnail_url . '?t=' . filemtime($thumbnail_file);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -798,7 +798,7 @@ class CommentItem extends BaseObject
|
|||
clearstatcache(true, $thumbnail_file);
|
||||
if (file_exists($thumbnail_file) && filesize($thumbnail_file) > 0)
|
||||
{
|
||||
return $thumbnail_url . '?' . date('YmdHis', filemtime($thumbnail_file));
|
||||
return $thumbnail_url . '?t=' . filemtime($thumbnail_file);
|
||||
}
|
||||
|
||||
// return false if neigher attached file nor image;
|
||||
|
|
|
|||
|
|
@ -1135,7 +1135,7 @@ class DocumentItem extends BaseObject
|
|||
}
|
||||
else
|
||||
{
|
||||
return $thumbnail_url . '?' . date('YmdHis', filemtime($thumbnail_file));
|
||||
return $thumbnail_url . '?t=' . filemtime($thumbnail_file);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1149,7 +1149,7 @@ class DocumentItem extends BaseObject
|
|||
clearstatcache(true, $thumbnail_file);
|
||||
if (file_exists($thumbnail_file) && filesize($thumbnail_file) > 0)
|
||||
{
|
||||
return $thumbnail_url . '?' . date('YmdHis', filemtime($thumbnail_file));
|
||||
return $thumbnail_url . '?t=' . filemtime($thumbnail_file);
|
||||
}
|
||||
|
||||
// Get content if it does not exist.
|
||||
|
|
|
|||
|
|
@ -137,7 +137,7 @@ var auto_saved_msg = "{$lang->msg_auto_saved}";
|
|||
CKEDITOR.dtd.$removeEmpty.ins = 0;
|
||||
|
||||
// Set the timestamp for plugins.
|
||||
CKEDITOR.timestamp = '{strtoupper(dechex(max($ckeditor_main_filemtime, $ckeditor_config_filemtime, $editor_config_timestamp ?? 0)))}';
|
||||
CKEDITOR.timestamp = '{max($ckeditor_main_filemtime, $ckeditor_config_filemtime, $editor_config_timestamp ?? 0)}';
|
||||
|
||||
// Add editor components.
|
||||
<!--@if($enable_component)-->
|
||||
|
|
|
|||
|
|
@ -1109,7 +1109,7 @@ class MemberModel extends Member
|
|||
$info = new stdClass();
|
||||
$info->width = $width;
|
||||
$info->height = $height;
|
||||
$info->src = \RX_BASEURL . $image_name_file . '?' . date('YmdHis', filemtime(\RX_BASEDIR . $image_name_file));
|
||||
$info->src = \RX_BASEURL . $image_name_file . '?t=' . filemtime(\RX_BASEDIR . $image_name_file);
|
||||
$info->file = './'.$image_name_file;
|
||||
$GLOBALS['__member_info__']['profile_image'][$member_srl] = $info;
|
||||
break;
|
||||
|
|
@ -1142,7 +1142,7 @@ class MemberModel extends Member
|
|||
$info = new stdClass;
|
||||
$info->width = $width;
|
||||
$info->height = $height;
|
||||
$info->src = \RX_BASEURL . $image_name_file. '?' . date('YmdHis', filemtime(\RX_BASEDIR . $image_name_file));
|
||||
$info->src = \RX_BASEURL . $image_name_file. '?t=' . filemtime(\RX_BASEDIR . $image_name_file);
|
||||
$info->file = './'.$image_name_file;
|
||||
$GLOBALS['__member_info__']['image_name'][$member_srl] = $info;
|
||||
}
|
||||
|
|
@ -1176,7 +1176,7 @@ class MemberModel extends Member
|
|||
$info = new stdClass;
|
||||
$info->width = $width;
|
||||
$info->height = $height;
|
||||
$info->src = \RX_BASEURL . $image_mark_file . '?' . date('YmdHis', filemtime(\RX_BASEDIR . $image_mark_file));
|
||||
$info->src = \RX_BASEURL . $image_mark_file . '?t=' . filemtime(\RX_BASEDIR . $image_mark_file);
|
||||
$info->file = './'.$image_mark_file;
|
||||
$GLOBALS['__member_info__']['image_mark'][$member_srl] = $info;
|
||||
}
|
||||
|
|
@ -1232,7 +1232,7 @@ class MemberModel extends Member
|
|||
$localpath = str_replace('/./', '/', parse_url($info->src, PHP_URL_PATH));
|
||||
if(file_exists($_SERVER['DOCUMENT_ROOT'] . $localpath))
|
||||
{
|
||||
$info->src = $localpath . '?' . date('YmdHis', filemtime($_SERVER['DOCUMENT_ROOT'] . $localpath));
|
||||
$info->src = $localpath . '?t=' . filemtime($_SERVER['DOCUMENT_ROOT'] . $localpath);
|
||||
}
|
||||
}
|
||||
$GLOBALS['__member_info__']['group_image_mark'][$member_srl] = $info;
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ class rssModel extends rss
|
|||
$config->feed_document_count = intval($config->feed_document_count ?? 15) ?: 15;
|
||||
if (isset($config->image) && $config->image)
|
||||
{
|
||||
$config->image_url = $config->image . '?' . date('YmdHis', filemtime($config->image));
|
||||
$config->image_url = $config->image . '?t=' . filemtime($config->image);
|
||||
}
|
||||
|
||||
return $config;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue