如何解决 Google Page Speed:“未指定过期时间”
Posted
技术标签:
【中文标题】如何解决 Google Page Speed:“未指定过期时间”【英文标题】:How to solve Google Page Speed: "expiration not specified" 【发布时间】:2016-12-28 01:38:24 【问题描述】:使用GooglePageSpeed 分析在线商店(Shopware)会导致许多“未指定过期”——每张图片上的线条。
我想知道,因为网络服务器 (nginx) 将 Last-Modified-Timestamps 和 ETAG 标头添加到所有图像的响应中,从而导致预期的 304-Response第二个请求。
Google Page Speed 是否不支持 ETAG/LastModified?
我将提供 nginx 配置的适当部分:
location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$
expires 1M;
access_log off;
add_header Cache-Control "public";
## All static files will be served directly.
location ~* ^.+\.(?:css|cur|js|jpe?g|gif|ico|png|html|xml)$
## Defining rewrite rules
rewrite files/documents/.* /engine last;
rewrite backend/media/(.*) /media/$1 last;
expires 1w;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
access_log off;
# The directive enables or disables messages in error_log about files not found on disk.
log_not_found off;
tcp_nodelay off;
## Set the OS file cache.
open_file_cache max=3000 inactive=120s;
open_file_cache_valid 45s;
open_file_cache_min_uses 2;
open_file_cache_errors off;
## Fallback to shopware
## comment in if needed
#try_files $uri @shopware;
是否有任何错误或遗漏?
【问题讨论】:
找到答案了吗? 我们发现 vhost-config 中有另一个 expire-statement。将它们简化为一个语句解决了我们的问题 【参考方案1】:最后我们发现,在 vhost-config 中有另一个 expire-statement。将两者简化为一个语句解决了我们的问题
【讨论】:
以上是关于如何解决 Google Page Speed:“未指定过期时间”的主要内容,如果未能解决你的问题,请参考以下文章
设置 HTTP 缓存过期,由 Google PageSpeed 推荐
Laravel blade 模板压缩加速扩展 renatomarinho/Laravel-page-speed 介绍