优化Web性能:如何正确设置Max-Age与Expires提升网站加载速度
Max-age是指我们的web中的文件被用户访问(请求)后的存活时间,是个相对的值,相对Request_time(请求时间)。
Expires它比max-age要麻烦点,Expires指定的时间分“相对文件的最后访问时间”和“绝对修改时间”。
解决未设置max-age或expires的方法:(我用的服务器是apache )
在服务器/虚拟空间根目录找到“.htaccess”文件。如果没有请新建。
在文件最下面添加如下代码:(设置max-age,含义是将某些文件的缓存保存2592000秒,30天)
-
- <FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf)$">;
- Header set Cache-Control "max-age=2592000"
- </FilesMatch>;
复制代码
保存上传,修改完毕。再去百度站长工具检测下,就会发现“未设置max-age或expires”的项目减少了,而且网站二次打开速度明显快了。
以上代码,是浏览器缓存格式flv,gif,jpg,jpeg,png,ico,swf格式的文件一个月。如果想改变缓存时间请修改max-age值。
如果需要缓存其他格式文件,请修改格式就OK。
在网站的.htaccess文件中写入以下内容:(设置expires)
-
- ExpiresActive On
- ExpiresDefault A600
- ExpiresByType image/x-icon A2592000
- ExpiresByType application/x-javascript A604800
- ExpiresByType text/css A604800
- ExpiresByType image/gif A2592000
- ExpiresByType image/png A2592000
- ExpiresByType image/jpeg A2592000
- ExpiresByType text/plain A86400
- ExpiresByType application/x-shockwave-flash A2592000
- ExpiresByType video/x-flv A2592000
- ExpiresByType application/pdf A2592000
- ExpiresByType text/html A600
- ExpiresDefault A2592000
复制代码
text/css表示样式表文件,text/plAIn代表的纯文本类文件,依次类推。那个A2592000就表示这种类型文件在浏览器中的缓存时间,2592000就表示这类文件可以缓存30天。如果你不是经常修改模板,那样式表文件和JavaScript文件基本上也可以设置缓存一周到一个月左右。text/html文件不要设置太长的缓存时间,因为这些东西修改的频率很高,ExpiresDefault A2592000 表示没有指定的文件类型就缓存一月。
|