标准模板的 CSS 文件 style_1.css 的大小达到了令人发指的 40k+, 不过在进行 Gzip 压缩后则只有不到 10K 的体积, 如果能实现论坛里所有的 CSS 全部进行压缩输出, 在网络较差的情况下大概显示速度能有所改观.
其实实现方法很简单, 通过下面的方法应该能够实现, 希望能给大家参考一下.
(前提是服务器支持 Rewrite)
首先修改缓存控制文件 include/cache.func.php, 查找到:$extra = substr($css, 3);
在上面添加:if(function_exists('gzencode')) $cssdata = gzencode($cssdata);
保存退出.
接着在论坛根目录创建一个新文件, 文件名为 gzcss.php , 内容如下:<?
@header('Content-Encoding: gzip');
@header('Content-type: text/css');
@readfile('./forumdata/cache/'.$_SERVER['QUERY_STRING'].'.css');
?>
保存退出.
然后修改 Rewrite 规则, 在原有的静态化的规则下增加:
Apache Web Server (独立主机用户):
RewriteRule ^(.*)/forumdata/cache/(.+).css$ $1/gzcss.php?$2
Apache Web Server (虚拟主机用户):
RewriteRule ^forumdata/cache/(.+).css$ gzcss.php?$1
IIS Web Server (独立主机用户):
RewriteRule ^(.*)/forumdata/cache/(.+).css?*(.*)$ $1/gzcss.php?$2&$3
然后如果需要重启服务器的就重启吧.
最后一步是最关键的, 到后台更新缓存.
然后就完成了, 现在可以打开论坛主页看看效果了