nginx/pagespeed 모듈에 문제가 있습니다. 이미지 캐시 시간은 첫 번째 페이지 로드 시 기본 5분입니다.
내 nginx.conf에는 다음이 있습니다.
##
# 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;
기본 5분 캐시 시간을 어떻게 수정할 수 있나요? pagespeed 모듈을 통해 첫 번째 페이지 로드 시 이미지를 어떻게 전달할 수 있나요?
도움이 되지 않았습니다:
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;
}
답변1
에서문서
PageSpeed는 HTTP 또는 HTTPS를 통해 리소스를 가져올 때 Expires 및 Cache-Control 헤더를 검사하여 캐시를 얼마나 자주 업데이트해야 하는지 결정합니다. 이러한 헤더가 시간 초과를 지정하지 않으면 기본 시간 초과인 5분이 사용됩니다. 이를 재정의하려면 다음을 지정하십시오.
pagespeed ImplicitCacheTtlMs implicit_cache_ttl_in_milliseconds;