php服务器js与css的压缩问题
今天突然发现以前使用的gzip.php程序生成的gz文件都在文件目录内生成,而不是在程序默认的wp-cache,这样非常麻烦,如果修改css或者更新插件,需要一个一个的寻找gz文件删除才可以,于是google了一番,才发觉这个文件已经被修改了,而且在.htaccess内很多语句是没有用的,原始的gzip.php可以在http://wopus.googlecode.com/files/gzip.php下载,需要修改
$cache = false;
为
$cache = true;
让它起作用,也可以在这里下载,已经修改完成。
上传至网站根目录,如果要将gz文件放入默认的wp-cache目录,需要在网站根目录新建wp-cache文件夹并设置目录权限为0777,以确保可写。
.htaccess文件的内容以前为
#BEGIN GZIP
<files *.js.gz>
AddEncoding gzip .js
ForceType application/x-javascript
</files>
<files *.css.gz>
AddEncoding gzip .css
ForceType text/css
</files>
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteBase /
#wordpress静态网址,如果沒有使用,就略过
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
#读到css和js文件,就重導至gzip.php
RewriteRule (.*.css$|.*.js$) gzip.php?$1 [L]
#读到.css,判断如果浏览器支持gzip且.css.gz文件存在,就進行重导
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*).css $1.css.gz [L,QSA]
#读到.js,判断如果浏览器支持gzip且.js.gz文件存在,就进行重导
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*).js $1.js.gz [L,QSA]
</ifmodule>
#END GZIP
实际上只要下面一句就可以了,因为gzip.php已经可以处理一切了
RewriteRule (.*.css$|.*.js$) gzip.php?$1 [L]
以后如果更新插件或者修改css文件,只需要删除wp-cache内gz文件就可以了。
本文地址:http://klniu.com/post/php-server-js-and-css-compression-problems/
相关文章
- 没有相关文章
