mod_pagespeed magento

时间:2010-11-05 11:29:08

标签: apache optimization magento mod-pagespeed

有没有人在magento商店中使用过mod_pagespeed?

是否会破坏任何内容(如自定义优化等?)

非常有兴趣使用它,但却因资源的运气而受苦......

4 个答案:

答案 0 :(得分:25)

你的帖子对我感兴趣,所以我玩过mod_pagespeed,我没有做任何详细的测试也没有测量。我的总体印象是漠不关心,不可察觉的利益微不足道。对Magento的最大阻碍一直是并且仍然是大量的PHP类需要花费很长时间才能加载和实例化。 Magento并不是像内联CSS这样的坏习惯,因此这个mod几乎没有空间。除了这些警告之外,这是我的经历。

Google首先打包mod_pagespeed非常好,它们提供源代码和二进制文件,但二进制文件安装程序会注册存储库,因此它会保持更新状态。我希望更多的制作人能够做到这一点。最明智的设置是默认设置,因此无需任何调整即可立即使用。

过滤器

配置被分解为filters的中等列表,您应该阅读这些列表以确切了解所做的改进。我只选择启用两个 - “remove_comments”和“collapse_whitespace” - 这在HTML大小上有显着差异,并没有破坏任何内容。

extend_cache - 默认开启。我喜欢它的概念,并认为它是维护文件版本的绝佳方式。是有用的。

outline_css& outline_javascript - 默认开启。不太相关。无害的。

combine_css& rewrite_css - 基本上与Magento的内置函数和几个扩展相同,包括始终欢迎Fooman Speedster。您可能认为这使它变得多余,但我喜欢它,因为它将PHP执行卸载到本机代码,由于块缓存,差异可能是微不足道的,但这对我来说已经足够了。是有用的。

inline_css& inline_javascript - outline_css&的补充outline_javascript并默认启用。是否会增加我不期望的页面大小。据说可以减少请求的数量但是如果要合并css / js文件会怎么样?我希望这只是从可缓存的源中删除内容。不想要。

collapse_whitespace& remove_comments - 默认关闭,但值得继续。即使在压缩之后,也会对正在传输的字节产生可测量的差异。是有用的。

combine_heads - 修复了在这种情况下可能永远不会出现的问题。无害的。

elide_atttributes - 我没有发现任何问题,但只有时间会告诉我,目前我认为它是无害的。是有用的。

rewrite_javascript - 这基本上是“jsmin”,谷歌自己的评论警告它有风险。由于Magento附带的js minifier都处于测试阶段并且在过去引起了我的问题,因此我考虑了这个圣人的建议,并将其完全放在一边。不想要。

rewrite_images - 我会保持这一点。是有用的。

insert_img_dimensions - 其他Magento确实没有问题,所以不需要修复。但它无害,可能有助于页面呈现更顺畅。是有用的。

ModPagespeedImgInlineMaxBytes - 将小图片转换为数据:uri内容。我不相信这一点,因为有一个棘手的UA版本检查,你不能确定你控制之外的代理不会服务于错误的浏览器。谷歌似乎认为这是“低到中等”的风险,但我不会给它这个机会。不想要。

remove_quotes - 打破w3c验证几个字节的增益。理论上它应该是无害的但我不相信它。不想要。

move_css_to_head& add_head - 可以打乱一些javascript,但Magento比那更难,然后Magento一般不会让这样的男生错误需要纠正。无害的。

结论

各种重写,重新排序和修复都妨碍了开发。浏览器报告的行号在源代码中不一定相同。出于这个原因,我绝不会将它用于生产服务器以外的任何东西。

对于像Magento这样的PHP驱动的应用程序来说,好处是如此之小。为了注意节省成本,我们中有多少人会管理每天有数百万访问者的服务器?我知道通过老式编程可以节省更多。阻止和整页缓存效果最佳。

尽管如此,欢迎任何改进,这也是我将来考虑它的原因。托管在同一台服务器上的任何其他网站都将以自己的方式受益 确切的配置将根据具体情况进行判断,但一般情况下我认为我会做以下事情:

  • 在mods-available / pagespeed.conf中:

    ModPagespeedDisableFilters inline_css,inline_javascript,rewrite_javascript,remove_quotes ModPagespeedEnableFilters collapse_whitespace,remove_comments

  • 安装Fooman Speedster以正确组合javascript。
  • 警告mod的beta版本的客户/账单付款人。

答案 1 :(得分:1)

我的magento商店中的图片有问题,所以我禁用了 “rewrite_images”过滤器。

ModPagespeedDisableFilters inline_css,inline_javascript,rewrite_javascript,remove_quotes,rewrite_images
ModPagespeedEnableFilters collapse_whitespace,remove_comments

这对我很有用。

为magento设置一个好的默认值吗?

我的意思是pagespeed.conf文件中的这一部分:

# Other defaults (cache sizes and thresholds):
#
# ModPagespeedFileCacheSizeKb          102400
# ModPagespeedFileCacheCleanIntervalMs 3600000
# ModPagespeedLRUCacheKbPerProcess     1024
# ModPagespeedLRUCacheByteLimit        16384
# ModPagespeedCssInlineMaxBytes        2048
# ModPagespeedImageInlineMaxBytes      2048
# ModPagespeedJsInlineMaxBytes         2048
# ModPagespeedCssOutlineMinBytes       3000
# ModPagespeedJsOutlineMinBytes        3000

答案 2 :(得分:1)

我认为mod_pagespeed的最大好处是图像优化。除此之外,magento确实很好地缩小了。

为了使图像优化正常工作,您需要增加缓存大小。对于我的情况,我有3GB图像,所以我将缓存大小增加到500MB

ModPagespeedFileCacheSizeKb          512000

我强烈建议您继续使用图像滤镜。如果你还有问题,你也可以一起把它关掉。没有图像过滤器的性能提升不是很多,并且不值得你浪费的CPU周期。

<强>更新

将缓存大小设置为大于图片文件夹大小可能是个好主意。阅读下面的评论

答案 3 :(得分:0)

我在使用带有Mod_pagespeed的Magento管理员时遇到了一些问题。但我认为我需要配置设置为@clockworkgeek已经建议。我将再次研究R&amp; D