需求说明
网站 www.xxx.com,环境WIN64 WAMP,分布3太服务器,主1台,次3台。里面用到的图片/CSS/JS 都放在 www.xxx.com/Public/ 目录下。需求是网站中引入到的/Public 目录下的JS/CSS 都会自动压缩,利于打开速度。
原方案
通过JSMInify + htaccess,把访问 /Public 目录中的JS/CSS 的请求地址指向 JSMinify 中的PHP ,然后通过JSMinify包进行自动压缩。这样程序员和设计上传CSS JS就无需做任何操作。很方便。
需求变更
先要求将 /Public 中的资源全部转移到CDN 服务器。CDN服务器配置 LN(Linux + Nignx),不支持PHP 不支持 htaccess。如何将工作量做到最小?
个人方案
1)每次上传Public 中的CSS/JS 先试用Notepad++ 中的JSMini插件进行压缩格式化。然后再传
不足:网站仍旧大改动中,每次都可能修改很多JS CSS,如果一个个压缩,很可能遗漏或者有些错误。
2)自己试用JSMinify 制作一个插件,扫描指定目录中的JS/CSS 文件,然后压缩后存放。
不足:仍旧是需要手动操作,且制作这个插件需要花费一定时间。
3)寻找网络上的批量压缩工具
问题:目前没有找到。
连接
Google JSMinfiy:https://code.google.com/p/minify/
如何才可以简化?
我现在使用的方案是自己本地用PHP建立一个脚本,将Public 目录的 资源(非CSS/JS)全都复制到另外一个目录,CSS/JS 就采用 http://localhost/min/index.php?filename=$filename 的方式下载保存。有点简单粗暴,但是省略了在minify类库上创建程序的麻烦。
为什么不用grunt或者gulp实现自动化压缩