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] と呼ばれる設定によって制限されます。それには正当な理由があります。これは、1 つの URL に結合できるファイルの量にも制限があることを意味します。これが原因で、14 個の css ファイルが 1 つではなく 3 つの URL に結合されている可能性があります。

JavaScript の縮小化をスキップする理由としては、次のことが考えられます。 - JavaScript が内省的であると診断された [2]。- JavaScript に解析エラーが含まれています。

nginx の error.log を見て、構成の読み込みメッセージとそこにある最初のリクエストの ngx_pagespeed の出力を確認して、何が問題なのかを調べる価値があるかもしれません。

[1] https://developers.google.com/speed/pagespeed/module/restricting_urlsの「生成される URL セグメントの最大長の 制限」を参照してください。

于 2013-09-30T12:33:38.293 に答える