Dma*_*n88 8 wordpress mod-pagespeed
我在我们的服务器上安装了mod_pagespeed但它不会在我们的网站oktoberfest.it上组合我的CSS和JS.显然我已经在pagespeed.conf文件中的过滤器中激活了combine_css,combine_javascript和PassThrough.
我还读到mod_pagespeed无法组合包含CSS3指令的CSS文件,但在我的Apache日志文件中,当然启用LevelLog调试后,没有任何关于组合失败的错误或信息.既不是CSS也不是JS.
我试过:
我现在不知道该怎么办.我完成了想法.我真的希望这个mod_pagespeed功能适用于我们的网站,我们有40个CSS和JS的请求来自我们无法管理的插件.
你建议我做什么?
MCG*_*MCG 18
对于CSS组合
当您使用Wordpress时,您需要在function.phpWordpress中添加一个函数
.
function remove_style_id($link) {
return preg_replace("/id='.*-css'/", "", $link);
}
add_filter('style_loader_tag', 'remove_style_id');
Run Code Online (Sandbox Code Playgroud)
Wordpress将ID=""标签写入了pagepeed不喜欢的css链接.所以它会被忽略.
但是,如果Javascript调用了ID,它"可能"导致插件出现问题,但是经常没有人会这样做.所以你会安全的.
从版本 1.12.34.1 开始,您可以允许 css 组合的 ID,请查看文档。
当 wordpress 添加-css到任何 ID 时,您只需添加:
阿帕奇:
ModPagespeedPermitIdsForCssCombining *-css
Run Code Online (Sandbox Code Playgroud)
nginx:
pagespeed PermitIdsForCssCombining *-css;
Run Code Online (Sandbox Code Playgroud)
小智 5
似乎存在一些阻止mod_pagespeed组合您网站上的资源的问题.首先,许多CSS文件都有id属性,这会阻止combine_css过滤器运行.HTML通常期望元素具有单个id属性,并且如果组合这些CSS文件,则不清楚应该是什么.
这并不能解释为什么mod_pagespeed似乎不会重写页面上的任何CSS或JS资源.mod_pagespeed能够重写HTML,例如www.oktoberfest.it/?ModPagespeedFilters=collapse_whitespace能够从页面中删除空格.问题很可能是mod_pagespeed无法在内部获取这些资源.这可能由于多种原因而发生,但请查看您的apache error_log以获取与SERF相关的消息.
获取相关失败的最佳解决方法是ModPagespeedLoadFromFile在您的环境允许的情况下使用该指令.另请参阅此FAQ条目,该条目解释了该问题.您还可以尝试更新到测试版1.4.26.1或更高版本,其中包括针对常见环回获取错误的解决方法.
| 归档时间: |
|
| 查看次数: |
7621 次 |
| 最近记录: |