坦白说,APC cache似乎没什么太大的作用。但总结一下,至少可以做的几点:
1、关闭zen cart的分类产品数量统计功能。
进入zen cart后台 -> configuration -> my store -> Show Category Counts 选择 false。
2、关闭掉供应商block.
进入zen cart后台 -> Tools -> Layout Boxes Controller
3、关闭掉无用的属性功能,这样可以减轻不必要的sql查询,减轻mysql负担,提高zen cart响应速度。
进入zen cart后台 -> Configuration -> Attribute Settings,关闭掉如下选项(通常都是没用使用,不过请根据实际处理)
Enable Downloads
Enable Price Factor
Enable Qty Price Discount
Enable Attribute Images
Enable Text Pricing by word or letter
4、打开后台的内容压缩功能,这样可以在将网页内容传输掉客户端前进行压缩,减少对带宽的依赖,对小带宽用户的速度提升是有很大帮助的。
进入zen cart后台 ->Config->GZip Compression->Enable GZip Compression = 1
下面这个页面提供一个工具,你可以查看你的网站是否使用压缩,以及压缩的程度。
http://www.gidnetwork.com/tools/gzip-test.php
5、关闭掉zen cart的日志,页面执行时间等无用功能。
进入zen cart后台 -> configuration->logging
6、优化首页。调查研究表明。如果首页加载时间太长会导致大部分客户转向竞争对手,所以,首页不要加载太多的产品和图片,甚至可以考虑直接关掉一些不太必要的内容block,如物价产品,新产品或推荐产品。
7、无论是出于安全还是服务器负担的考量,都应该关闭掉tell a friend功能,包含模板中的链接和side block.
高级优化:
8、确保网站的样式文件中没有对不存在图片的引用,因为这样会增加页面的等待响应时间。如果需要,还可以压缩css,js代码。
9、优化站点内产品图片。默认情况下所有的产品图片都保存在一个目录下,当一个目录下图片文件数量比较多的时候就会降低zen cart的速度。试想一下,从1W个图片中找到一个图片的时间快还是从100个中取出一个图片来得快,虽然比喻不是很贴切。
实际上述优化的sql语句(执行前请先备份你的数据库):
UPDATE `configuration` SET `configuration_value` = 'false' WHERE `configuration_key` like 'SHOW_COUNTS'
UPDATE `configuration` SET `configuration_value` = 'false' WHERE `configuration_key` like 'ATTRIBUTES_ENABLED_PRICE_FACTOR'
UPDATE `configuration` SET `configuration_value` = 'false' WHERE `configuration_key` like 'ATTRIBUTES_ENABLED_QTY_PRICES'
UPDATE `configuration` SET `configuration_value` = 'false' WHERE `configuration_key` like 'ATTRIBUTES_ENABLED_IMAGES'
UPDATE `configuration` SET `configuration_value` = 'false' WHERE `configuration_key` like 'ATTRIBUTES_ENABLED_TEXT_PRICES'
UPDATE `layout_boxes` SET `layout_box_status` =0 WHERE `layout_box_name` LIKE 'manufacturers.php'
UPDATE `zen_configuration` SET `configuration_value` =1 WHERE `configuration_key` LIKE 'GZIP_LEVEL'
UPDATE `zen_configuration` SET `configuration_value` ='false' WHERE `configuration_key` LIKE 'STORE_PAGE_PARSE_TIME'
UPDATE `zen_configuration` SET `configuration_value` ='false' WHERE `configuration_key` LIKE 'DISPLAY_PAGE_PARSE_TIME '