Pagespeed rewrite_javascript除了1个单独的js文件之外的所有内容

时间:2016-01-22 14:38:05

标签: javascript nginx pagespeed mod-pagespeed google-pagespeed

我的rewrite_javascript模块存在一个小问题,它会缩小JS文件。这个功能非常棒,因为如果我们清除缓存,pagespeed也会为每个文件生成一个新的URL,从而使我们能够轻松地使用Cloudfront缓存来处理pagespeed' ShardDomain

但是我遇到了一个我的文件/js/min/app/common.js"的问题,尽管其中的文件已被重写,但该文件根本没有重写。

image

我只是不知道为什么会发生这种情况。

是否有人遇到同样的问题并找到解决方案?

谢谢

更新

抱歉这个问题需要时间。我在这里发布了我的pagespeed配置的详细信息:

在HTTP块中,我有:

pagespeed InPlaceResourceOptimization on;
pagespeed PreserveUrlRelativity on;
pagespeed ForceCaching on;
pagespeed InPlaceRewriteDeadlineMs 100;

pagespeed EnableFilters collapse_whitespace;
pagespeed EnableFilters recompress_images;
pagespeed EnableFilters convert_meta_tags;
pagespeed EnableFilters prioritize_critical_css;
pagespeed EnableFilters extend_cache;
pagespeed EnableFilters rewrite_css,sprite_images;
pagespeed EnableFilters rewrite_javascript;
pagespeed EnableFilters extend_cache;

pagespeed GlobalStatisticsPath /pagespeed_global_statistics;
pagespeed GlobalAdminPath /pagespeed;
pagespeed EnableCachePurge on;

1 个答案:

答案 0 :(得分:4)

默认情况下,Pagespeed不会重写被视为"内省"的JavaScript文件。如果您阅读the Pagespeed docs,则说明:

  

...调用document.getElementsByTagName('脚本')的JavaScript文件不会被重写

查看你的common.js文件,有一些行包含函数调用document.getElementsByTagName('script')。这就是Pagespeed不会重写文件的原因。

如果要禁用此Pagespeed检查,请在nginx配置中添加以下行:

pagespeed AvoidRenamingIntrospectiveJavascript off;

Pagespeed docs中的更多信息。