Ich habe ein Problem mit dem Nginx/Pagespeed-Modul. Die Cache-Zeit der Bilder beträgt beim ersten Laden der Seite standardmäßig 5 Minuten.
In meiner nginx.conf steht:
##
# PageSpeed
##
pagespeed on;
pagespeed FileCachePath /var/ngx_pagespeed_cache;
pagespeed Domain https://example.com;
pagespeed Domain *.example.com;
pagespeed MapOriginDomain "http://localhost" "https://example.com";
pagespeed LoadFromFile "https://example.com" "/usr/share/nginx/www/";
pagespeed LoadFromFileRuleMatch Disallow \.php$;
pagespeed XHeaderValue "Powered By ngx_pagespeed";
pagespeed ListOutstandingUrlsOnError on;
pagespeed EnableFilters extend_cache;
# image related
pagespeed EnableFilters rewrite_images;
pagespeed EnableFilters convert_gif_to_png;
pagespeed EnableFilters convert_jpeg_to_progressive;
pagespeed EnableFilters strip_image_color_profile;
pagespeed EnableFilters strip_image_meta_data;
pagespeed EnableFilters jpeg_subsampling;
pagespeed EnableFilters lazyload_images;
# code related
pagespeed EnableFilters collapse_whitespace;
# DNS related
pagespeed EnableFilters insert_dns_prefetch;
# JS related
pagespeed UseExperimentalJsMinifier on;
pagespeed EnableFilters rewrite_javascript;
pagespeed EnableFilters combine_javascript;
# css related
pagespeed EnableFilters rewrite_css;
pagespeed EnableFilters prioritize_critical_css;
pagespeed EnableFilters combine_css;
pagespeed EnableFilters outline_css;
pagespeed EnableFilters flatten_css_imports;
Wie kann ich die standardmäßige Cache-Zeit von 5 Minuten ändern? Wie kann ich die Bilder beim ersten Laden der Seite über das Pagespeed-Modul übergeben?
Es hat nicht geholfen:
location ~* \.(jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
expires 1y;
access_log off;
add_header Cache-Control "public";
try_files $uri =404;
}
location ~* \.(pdf|js|css|swf)$ {
expires 1M;
access_log off;
add_header Cache-Control "public";
try_files $uri =404;
}
Antwort1
AusDokumente
Wenn PageSpeed eine Ressource über HTTP oder HTTPS abruft, prüft es die Header „Expires“ und „Cache-Control“, um zu bestimmen, wie häufig der Cache aktualisiert werden soll. Wenn diese Header kein Timeout angeben, wird ein Standard-Timeout von 5 Minuten verwendet. Um dies zu überschreiben, geben Sie Folgendes an:
pagespeed ImplicitCacheTtlMs implicit_cache_ttl_in_milliseconds;