Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess 如何在nginx上启用浏览器缓存?_.htaccess_Nginx_Caching_Browser Cache_Pagespeed - Fatal编程技术网

.htaccess 如何在nginx上启用浏览器缓存?

.htaccess 如何在nginx上启用浏览器缓存?,.htaccess,nginx,caching,browser-cache,pagespeed,.htaccess,Nginx,Caching,Browser Cache,Pagespeed,我试图用PageSpeed Insights分析web速度,Google告诉我需要启用缓存 因此,我在.htaccess中添加了: <IfModule mod_expires.c> <FilesMatch ".(ico|pdf|flv|jpg|jpeg|png|gif|svg|webp|js|css|swf|gz|json)$"> ExpiresActive On ExpiresDefault A604800 </FilesMatch> </IfModu

我试图用PageSpeed Insights分析web速度,Google告诉我需要启用缓存

因此,我在.htaccess中添加了:

<IfModule mod_expires.c>
<FilesMatch ".(ico|pdf|flv|jpg|jpeg|png|gif|svg|webp|js|css|swf|gz|json)$">
ExpiresActive On
ExpiresDefault A604800
</FilesMatch>
</IfModule>

<IfModule mod_headers.c>
<FilesMatch ".(ico|pdf|flv|jpg|jpeg|png|gif|svg|webp|js|css|swf|gz|json)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
</IfModule>
和Chrome DevTools网络展示:

但是PageSpeed总是告诉“使用有效的缓存策略为静态资产提供服务”



为什么PageSpeed无法设置?缓存不工作?如何启用它?

因为您使用的是nginx
。htaccess
无法工作,所以您需要使用您展示的“plesk附加nginx指令”部分

Google Page Speed Insights仍在抱怨的原因是,您已将其设置为仅缓存24小时(86400是以秒计的1天)

“高效缓存策略”的“高效”部分指的是将文件缓存至少30天,理想情况下更长时间,以节省回访访问者的流量

将其更改为:

add_header Cache-Control "public, max-age=31536000,no-transform";
因为这将缓存它长达一年,并删除错误消息

<IfModule mod_expires.c>
<Filesmatch "\.(jpg|jpeg|png|gif|js|css|swf|ico|woff|mp3)$">
  ExpiresActive on
  ExpiresDefault "access plus 30 days"
</Filesmatch>
</IfModule>
location ~* \.(?:jpg|jpeg|gif|png|webp|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc|js|css|json)$ {
  etag on;
  expires 1M;
  if_modified_since exact;
  add_header Pragma "public";
  add_header Cache-Control "public, max-age=86400,no-transform";
}
add_header Cache-Control "public, max-age=31536000,no-transform";