php – Minify在源文件更改后返回白页
发布时间:2020-12-13 17:58:37 所属栏目:PHP教程 来源:网络整理
导读:Minify对我来说很好,但在更改其中一个源文件后,我收到一个白色的空白页面.刷新页面不会改变任何内容.没有缓存的刷新(Strg F5)解决了这个问题.在没有缓存的一次刷新之后,我可以通过缓存重新刷新并且它可以工作. URL im调用如下所示: dev/min/min.php/js?type
Minify对我来说很好,但在更改其中一个源文件后,我收到一个白色的空白页面.刷新页面不会改变任何内容.没有缓存的刷新(Strg F5)解决了这个问题.在没有缓存的一次刷新之后,我可以通过缓存重新刷新并且它可以工作.
URL im调用如下所示:
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(); } 请求标题: 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 响应标题: 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,php3; path=/
这是因为服务器和/或浏览器正在缓存它.当源更新时,您使缓存无效,但浏览器认为它仍然被缓存,尝试引用它,显示空白,直到您强制刷新(ctrl F5).解决这个问题的方法是通过“版本”编号使您用来访问它的URL唯一. Microsoft将它与它们的bundle一起使用(如果源文件发生了更改,则哈希值会更改),这会自动告诉浏览器获取它的“新”副本.
我遇到了同样的问题,我提供给一个客户端的XML源,这个客户端不断获得相同的副本,直到我在最后添加了一个版本号,迫使浏览器总是获取一个新文件 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |