Duc*_*tal 3 javascript nginx pagespeed mod-pagespeed google-pagespeed
我在rewrite_javascript缩小JS文件的模块上有一个小问题。该功能很棒,因为如果我们清除缓存,pagespeed还会为每个文件生成一个新的URL,因此使我们能够轻松地将Cloudfront缓存与pagespeed一起使用ShardDomain
但是,我遇到了一个文件问题,/js/min/app/common.js"尽管该文件下的文件已被重写,但根本无法重写。

我只是不知道为什么会发生这种情况。
有没有人遇到相同的问题并找到了解决方案?
谢谢
更新:
很抱歉,这个问题需要花费时间。我在这里发布了我的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;
Run Code Online (Sandbox Code Playgroud)
默认情况下,Pagespeed不会重写被视为“自省”的JavaScript文件。如果您阅读Pagespeed文档,它会指出:
...一个调用document.getElementsByTagName('script')的JavaScript文件将不会被重写
查看common.js文件,其中包含几行,其中包括函数call document.getElementsByTagName('script')。这就是Pagespeed不会重写文件的原因。
如果要禁用此Pagespeed检查,请在nginx配置中添加以下行:
pagespeed AvoidRenamingIntrospectiveJavascript off;
Run Code Online (Sandbox Code Playgroud)
Pagespeed文档中的更多信息。