源文件更改后缩小 returns 白页
Minify returns white page after source file changes
Minify 对我来说工作正常,但在更改其中一个源文件后,我收到一个空白页面。刷新页面不会改变任何东西。没有缓存的刷新(Strg + F5)解决了这个问题。在没有缓存的情况下刷新一次后,我可以返回使用缓存刷新并且它有效。
我的 URL 呼叫如下所示:
dev/min/min.php/js?type=js&src%5B0%5D=ewOutlibs%2Fjquery.min.js&src%5B1%5D=ewOutlibs%2Fcookie%2Fjquery.cookie.js
min.php
<?php
define('MINIFY_MIN_DIR', dirname(__FILE__));
// load config
require MINIFY_MIN_DIR . '/config.php';
// autoload
require $min_libPath . "/Minify/Loader.php";
Minify_Loader::register();
// caching
Minify::setCache(
isset($min_cachePath) ? $min_cachePath : ''
,$min_cacheFileLocking
);
// get files to merge
$aSrc = $_GET['src'];
// replace shortened url with long url
if (isset($_GET['type']) && $_GET['type'] === 'js') {
$aSrc = str_replace('ewOut', '//out/xxx/src/js/', $aSrc);
}
// build array
$aSources = array(
'files' => $aSrc,
'maxAge' => 31536000 // one year
);
try {
// compress, merge and serve new file
Minify::serve('Files', $aSources);
} catch (Exception $e) {
echo $e->getMessage();
}
请求Header:
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip, deflate, sdch
Accept-Language:de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
Cache-Control:max-age=0
Connection:keep-alive
Cookie:oxidadminprofile=0%40Standard%4010%401; oxidadminlanguage=de; sid_key=oxid; language=0; sid=crlrs8bqg21g6e33arsjq708k4; ZDEDebuggerPresent=php,phtml,php3
Host:dev.teltec
If-Modified-Since:Tue, 04 Aug 2015 12:35:59 GMT
If-None-Match:"pub1438691759;gz"
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.125 Safari/537.36
回应Header:
HTTP/1.1 304 Not Modified
Date: Tue, 04 Aug 2015 12:36:04 GMT
Server: Apache/2.2.21 (Win32) mod_ssl/2.2.21 OpenSSL/0.9.8o mod_fcgid/2.3.9
Connection: Keep-Alive
Keep-Alive: timeout=5, max=99
ETag: "pub1438691759;gz"
Expires: Wed, 03 Aug 2016 12:36:04 GMT
Cache-Control: max-age=31536000
Vary: Accept-Encoding
Set-Cookie: ZDEDebuggerPresent=php,phtml,php3; path=/
这是因为服务器 and/or 浏览器正在缓存它。您在源更新时使缓存无效,但浏览器认为它仍在缓存中,尝试引用它,显示空白,直到您强制刷新 (ctrl+F5)。解决它的方法是通过 "version" 数字使您用来访问它的 URL 唯一。微软将它与他们的捆绑包一起使用(如果源文件更改,哈希也会更改)会自动告诉浏览器去获取它的 "new" 副本。
我在向客户提供的 XML 提要中遇到了同样的问题,客户一直得到相同的副本,直到我在末尾添加了一个版本号,迫使浏览器始终获取新文件
stage 系统上的 tmp 目录不可写,因此 Minify 缓存文件失败并返回白页。愚蠢的错误。
在本地工作正常,因为 tmp 目录按预期工作。
Minify 对我来说工作正常,但在更改其中一个源文件后,我收到一个空白页面。刷新页面不会改变任何东西。没有缓存的刷新(Strg + F5)解决了这个问题。在没有缓存的情况下刷新一次后,我可以返回使用缓存刷新并且它有效。
我的 URL 呼叫如下所示:
dev/min/min.php/js?type=js&src%5B0%5D=ewOutlibs%2Fjquery.min.js&src%5B1%5D=ewOutlibs%2Fcookie%2Fjquery.cookie.js
min.php
<?php
define('MINIFY_MIN_DIR', dirname(__FILE__));
// load config
require MINIFY_MIN_DIR . '/config.php';
// autoload
require $min_libPath . "/Minify/Loader.php";
Minify_Loader::register();
// caching
Minify::setCache(
isset($min_cachePath) ? $min_cachePath : ''
,$min_cacheFileLocking
);
// get files to merge
$aSrc = $_GET['src'];
// replace shortened url with long url
if (isset($_GET['type']) && $_GET['type'] === 'js') {
$aSrc = str_replace('ewOut', '//out/xxx/src/js/', $aSrc);
}
// build array
$aSources = array(
'files' => $aSrc,
'maxAge' => 31536000 // one year
);
try {
// compress, merge and serve new file
Minify::serve('Files', $aSources);
} catch (Exception $e) {
echo $e->getMessage();
}
请求Header:
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip, deflate, sdch
Accept-Language:de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
Cache-Control:max-age=0
Connection:keep-alive
Cookie:oxidadminprofile=0%40Standard%4010%401; oxidadminlanguage=de; sid_key=oxid; language=0; sid=crlrs8bqg21g6e33arsjq708k4; ZDEDebuggerPresent=php,phtml,php3
Host:dev.teltec
If-Modified-Since:Tue, 04 Aug 2015 12:35:59 GMT
If-None-Match:"pub1438691759;gz"
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.125 Safari/537.36
回应Header:
HTTP/1.1 304 Not Modified
Date: Tue, 04 Aug 2015 12:36:04 GMT
Server: Apache/2.2.21 (Win32) mod_ssl/2.2.21 OpenSSL/0.9.8o mod_fcgid/2.3.9
Connection: Keep-Alive
Keep-Alive: timeout=5, max=99
ETag: "pub1438691759;gz"
Expires: Wed, 03 Aug 2016 12:36:04 GMT
Cache-Control: max-age=31536000
Vary: Accept-Encoding
Set-Cookie: ZDEDebuggerPresent=php,phtml,php3; path=/
这是因为服务器 and/or 浏览器正在缓存它。您在源更新时使缓存无效,但浏览器认为它仍在缓存中,尝试引用它,显示空白,直到您强制刷新 (ctrl+F5)。解决它的方法是通过 "version" 数字使您用来访问它的 URL 唯一。微软将它与他们的捆绑包一起使用(如果源文件更改,哈希也会更改)会自动告诉浏览器去获取它的 "new" 副本。
我在向客户提供的 XML 提要中遇到了同样的问题,客户一直得到相同的副本,直到我在末尾添加了一个版本号,迫使浏览器始终获取新文件
stage 系统上的 tmp 目录不可写,因此 Minify 缓存文件失败并返回白页。愚蠢的错误。 在本地工作正常,因为 tmp 目录按预期工作。