我想压缩我的服务器上的CSS和JS文件,以最大限度地减少加载时间,问题。无需mod_gzip和mod_deflate压缩CSS和JS
我的托管与Streamline.net(大错误,永远不会去那里)由于安全问题谁不会激活mod_gzip和mod_deflate。
有没有人有另一种方式来压缩这些类型的文件(和图像文件太pos),而不去mod_gzip和mod_deflate的方式。
答案将非常受欢迎。
我想压缩我的服务器上的CSS和JS文件,以最大限度地减少加载时间,问题。无需mod_gzip和mod_deflate压缩CSS和JS
我的托管与Streamline.net(大错误,永远不会去那里)由于安全问题谁不会激活mod_gzip和mod_deflate。
有没有人有另一种方式来压缩这些类型的文件(和图像文件太pos),而不去mod_gzip和mod_deflate的方式。
答案将非常受欢迎。
您可以通过脚本运行您的文件,该脚本会为您加密并添加适当的过期标题。 要么建立一个URL重写,或手动改写网址:
<script src="js/somescript.js"></script>
成为
<script src="compress.php?somescript.js"></script>
和compress.php,你可以这样做
<?php
$file = 'js/' . basename($_SERVER['QUERY_STRING']);
if (file_exists($file)) {
header ('Last-Modified: ' . date('r',filemtime($file));
header ('Content-Type: text/javascript'); // otherwise PHP sends text/html, which could confuse browsers
ob_start('ob_gzhandler');
readfile($file);
} else {
header('HTTP/1.1 404 Not Found');
}
显然,这可以还可以扩展到provide HTTP caching和/或即时缩小,进一步加快了访问者的浏览速度。
这听起来很有趣,我会试试看,如果我的编码完全失败了,我会回报 - 欢呼! – DanC 2009-12-23 13:55:08
是的,答案是Minification。
大多数编程语言都支持一些数据或文件压缩格式,如ZLIB或GZIP。因此,您可以使用编程语言以这些格式之一压缩文件。
而不是让mod_gzip动态地gzip你的CSS和JavaScript文件,你可以自己gzip,然后上传它们。
这会在您上传CSS和JavaScript之前引入另一个步骤,但它可以工作,甚至可以为每个请求节省一点服务器处理时间,而不是mod_gzip。
在Mac OS X,使用gzip压缩在命令行上的文件是,例如:
gzip -c styles.css > styles-gzip.css
确保这些文件会用正确的内容类型标题担任,虽然一样简单。
您是否支持编程语言? – Gumbo 2009-12-23 13:31:39
我不确定,我怎么知道? – DanC 2009-12-23 13:45:37
问问你的虚拟主机?他们可能有ASP或PHP – 2009-12-23 13:53:32