Javascript Pagespeed重写除1个js文件外的所有内容

Javascript Pagespeed重写除1个js文件外的所有内容,javascript,nginx,pagespeed,mod-pagespeed,google-pagespeed,Javascript,Nginx,Pagespeed,Mod Pagespeed,Google Pagespeed,我对缩小JS文件的rewrite\uJavaScript模块有一个小问题。此功能非常棒,因为如果清除缓存,pagespeed还会为每个文件生成一个新的URL,从而使我们能够使用pagespeed的ShardDomain轻松使用Cloudfront缓存 然而,我遇到了一个问题,我的一个文件/js/min/app/common.js“根本没有被重写,尽管它下面的文件已经被重写 我只是不明白为什么会发生这种事 是否有人有相同的问题并找到了解决方案 多谢各位 更新: 很抱歉回答这个问题花费了太多时间。

我对缩小JS文件的
rewrite\uJavaScript
模块有一个小问题。此功能非常棒,因为如果清除缓存,pagespeed还会为每个文件生成一个新的URL,从而使我们能够使用pagespeed的
ShardDomain轻松使用Cloudfront缓存

然而,我遇到了一个问题,我的一个文件
/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;

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

…调用document.getElementsByTagName(“脚本”)的JavaScript文件将不会被重写

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

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

pagespeed AvoidRenamingIntrospectiveJavascript off;

更多信息请参见。

如果没有显示所有pagespeed筛选器的nginx配置文件的副本,很难为您提供帮助。您可以发布common.js的内容吗?默认情况下,pagespeed不会重写“内省”js文件,也许您在common.js中有将其标记为“不可重写”的内容“@JoshKG我试图删除一些配置,但仍然无法找到问题的原因。您可以显示common.js吗?@JoshKG给您:。但它被缩小了。我找不到关于pagespeed标志的详细信息。我尝试了指令,但似乎pagespeed要严格得多。因此,我将尝试移动包含
document.getElementsByTagName('script')的任何部分。
out-of-common.js最重要的是我将require.js和jquery绑定到了我的common.js中。问题是,即使禁用了
AvoidRenamingIntrospectiveJavascript
,pagespeed仍然强制执行此规则。我所做的是将静态脚本移动到一个文件中,其余的移动到另一个文件中。js文件包含jquery和require.js的捆绑包。为了改进缓存,我将其上传到s3并通过cloudfront发送serve。