2

我有大约 14 个 css 表和大约 12 个 js 文件需要与我的应用程序一起加载。

我正在使用谷歌页面速度。

不是将 14 张纸合并为 1 张,而是将它们合并为 3 张。

即使是 javascript 组合也不能很好地工作,但在某种程度上是这样。那里也没有缩小。

我尝试阅读文档,但找不到太多线索。

而且它没有做任何缩小。它正在工作,但只是在某种程度上

这是与此有关的所有代码:

   pagespeed on;

   # Needs to exist and be writable by nginx.
   pagespeed FileCachePath /var/ngx_pagespeed_cache;
   pagespeed RewriteLevel PassThrough;
   pagespeed EnableFilters     add_head,combine_css,convert_meta_tags,convert_png_to_jpeg,extend_cache,fallback_rewrite_css_urls,flatten_css_imports,inline_css,inline_import_to_link,inline_javascript,rewrite_css,rewrite_images,rewrite_javascript,rewrite_style_attributes_with_url;
   pagespeed EnableFilters combine_javascript,remove_comments,collapse_whitespace;

   # Ensure requests for pagespeed optimized resources go to the pagespeed handler
   # and no extraneous headers get set.
   location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
     add_header "" "";
   }
   location ~ "^/ngx_pagespeed_static/" { }
   location ~ "^/ngx_pagespeed_beacon$" { }
   location /ngx_pagespeed_statistics { allow 127.0.0.1; deny all; }
   location /ngx_pagespeed_message { allow 127.0.0.1; deny all; }

我错过了什么过滤器?

4

1 回答 1

2

ngx_pagespeed 可以生成的 url 受一个名为“MaxSegmentLength”[1] 的设置的限制。这是有充分理由的。这意味着可以组合成单个 url 的文件数量也是有限的。这可能是导致 14 个 css 文件合并为 3 个 url 而不是 1 个的原因。

跳过 javascript 的缩小可能是因为以下原因: - javascript 被诊断为内省 [2]。- javascript 包含解析错误。

可能值得查看 nginx 的 error.log,并检查配置加载消息和 ngx_pagespeed 在第一个请求上的输出,以找出问题所在。

[1] 请参阅https://developers.google.com/speed/pagespeed/module/restricting_urls上的“限制生成的最大 URL 段长度” [2] 请参阅上面网址中的“限制 PageSpeed 重写内省 JavaScript 的 URL”。

于 2013-09-30T12:33:38.293 回答