Magento的速度问题一直困扰着我,以至于把能提高页面访问速度的方式能试的都试一遍。今天讲的东西并不是Magento独有,只不过为了弥补Magento在速度上的劣势,显得更迫切一点。
现在的网站越做越复杂,网页上的图片运用的很多,特别是商城会放很多大图片来做广告图,让网页的越来越大,以凡客为例,凡客的首页大小是2.4M,其中2.3M是图片,也就是说图片占据了网页内容的绝大多数。假如能把所有图片的大小压缩10%,整个页面就可以小230KB,而这并不是不可实现的。
Firebug这个插件应该每个做B/S开发的人都在用,而针对Firebug,Yahoo又提供了一个Firebug的插件YSlow,这是一个很强大的工具,今天不谈YSlow的其他功能,只看它能为我们压缩图片带来什么帮助。
用火狐打开凡客的主页,然后打开Firebug里的YSlow,点击Tools
下面有一排工具列表,找到倒数第二个All Smush.it,点击它之后,会跳转到http://www.smushit.com/ysmush.it/页面,接下来可以看到它再给整个页面的所有图片做压缩,压缩完成后会显示压缩的百分比和压缩的大小,
接下来你可以把压缩完的图片文件下载下来,并覆盖你网站原有的文件。这里它提供了一个很人性化的选项,保留图片的目录结构(Keep directory structure in zip file),这意昧着你可以直接把下载下来的压缩包解压后整个上传到你的网站目录,而不需要自己一张张去覆盖。
经过这一步骤,你网页上的所有图片经过压缩,网页大小可以大大减小,相对应得访问速度就提高了。
PS:很重要的一点是,据Yahoo官方的介绍,这款工具所做的图片压缩是无损的,也就是说你可以在不损失图片精度的前提下为你的网页瘦身。这点不好证实,至少我的眼睛是看不出压缩后的图片有什么精度的下降。
PS2:截图中可以看到,对凡客的图片做压缩效果并不好,不知道是因为有一些图片没有压的关系还是凡客的图片本身已经压缩的很好,如果是后者的话,这里要大大表扬下凡客的专业和精细。在对麦网做同样的测试后可以看到,如果麦网的首页使用Smush.it来做一次图片压缩,可以给网页一下子瘦身200多KB,效果就很明显了。