让autoptimize给压缩的css/js文件添加Last-Modified信息

最近因为放了广告,又新加了个Jiathis的分享插件,页面载入速度越来越慢,所以小研究下速度优化

用了Google的Page Speed和YSlow,都显示要把JS放到底部加载,之前用autoptimize压缩了js,的确是放底部加载的,但是这样会导致我归档页面的jQuery失效,不过想想无所谓了,那只是一个几乎没人看的页面

重新开启JS压缩后,又有个新的问题,检测到autoptimize压缩的3个php文件没有Last-Modified信息

看了文件header,里面有Expires,但是没有Last-Modified,而且Expires设置是最大值10年。。。

好吧,我自己觉得没必要那么久,最多30天够了,不过我这种不懂前端不懂设计的土鳖也是自己认为了

不过Last-Modified还是想加上的,但是给插件作者留言等新版那是极其不靠谱的做法,这插件也快一年没更新了,也没啥大问题,估计作者不大会更新了

用WP就要有折腾精神,自己看看代码吧,虽然不是很懂php,不过grep下相关名字,很快找到我要修改的地方

只需要修改两个文件,也获取只要一个,不过我两个都改了,万无一失,哈哈

修改/wp-content/cache/autoptimize/config/default.php

1
2
3
header('Cache-Control: max-age=604800, public, must-revalidate');//max-age修改为7天
header('Expires: '.gmdate('D, d M Y H:i:s', time() + 604800).' GMT'); //过期时间修改为7天,不需要那么久
header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime(__FILE__)).' GMT'); //新增此行,获取文件最后修改时间

修改/wp-content/cache/autoptimize/config/delayed.php

1
2
3
header('Cache-Control: max-age=1209600, public, must-revalidate');
header('Expires: '.gmdate('D, d M Y H:i:s', time() + 604800).' GMT');
header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime(__FILE__)).' GMT');

保存,清空缓存,重新用你的浏览器打开,建议用隐私模式,或者清除缓存后打开,查看autoptimize生成的压缩文件,是不是已经多了Last-Modified信息,并且过期时间也变7天了

声明: 除非注明,小峰网络遨游记文章均为原创,转载请以链接形式标明本文地址

本博客原创文字只代表本人某一时间内的观点或结论,与本人所在公司没有任何关系。

本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。

第三方若用于商业用途的转载,须取得本人授权。

本文作者:

本文地址:http://xfeng.me/autoptimize-compression-css-js-add-last-modified/

你可能还对下面文章感兴趣: