浏览器缓存网站静态文件
2012-12-21 11:23
260 查看
当用户第一次访问你的网站时,让用户的浏览器缓存网站的静态文件,如图片\CSS\JS等,然后接访问接下来的页面就会直接调用浏览器的缓存而不是重新从服务器下载,这样既节省带宽和流量又加快了用户打开网页的速度,一石三鸟,用不用你们自己把握。
我们可以用以下两个工具查看:
1. Yahoo开发的浏览器插件YSlow (https://addons.mozilla.org/zh-CN/firefox/addon/yslow/ ,Add Expires headers)
2. Google的Page Speed Online (https://developers.google.com/pagespeed/ ,使用浏览器缓存)
如果的服务器用的是Apache并且支持mod_expires模块,那么只要在网站更目录的.htaccess文件中添加以下代码即可,
//css|htm|html|js|flv|gif|jpg|jpeg|png|ico|swf格式的文件浏览器缓存1个月
<ifmodule mod_expires.c>
<filesmatch ?\.(css|htm|html|js|flv|gif|jpg|jpeg|png|ico|swf)$?>
ExpiresActive on
ExpiresDefault "access plus 1 months"
</filesmatch>
</ifmodule>
但如果你的服务器不支持mod_expires模块,没关系,我的服务器也不支持,为一个文件过期模块不值得装,我们可以通过常用的mod_header模块实现同样的功能,同样方法添加到.htaccess文件中:
<ifmodule mod_headers.c>
//ico|pdf|flv|jpg|jpeg|png|gif|swf格式的文件缓存一年
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=29030400, public"
</FilesMatch>
//js|css格式的文件缓存一个月
<FilesMatch "\.(js|css)$">
Header set Cache-Control "max-age=2629743, public"
</FilesMatch>
//html|htm|txt格式的文件缓存一天
<FilesMatch "\.(html|htm|txt)$">
Header set Cache-Control "max-age=86400, public"
</FilesMatch>
</ifmodule>
我们可以用以下两个工具查看:
1. Yahoo开发的浏览器插件YSlow (https://addons.mozilla.org/zh-CN/firefox/addon/yslow/ ,Add Expires headers)
2. Google的Page Speed Online (https://developers.google.com/pagespeed/ ,使用浏览器缓存)
如果的服务器用的是Apache并且支持mod_expires模块,那么只要在网站更目录的.htaccess文件中添加以下代码即可,
//css|htm|html|js|flv|gif|jpg|jpeg|png|ico|swf格式的文件浏览器缓存1个月
<ifmodule mod_expires.c>
<filesmatch ?\.(css|htm|html|js|flv|gif|jpg|jpeg|png|ico|swf)$?>
ExpiresActive on
ExpiresDefault "access plus 1 months"
</filesmatch>
</ifmodule>
但如果你的服务器不支持mod_expires模块,没关系,我的服务器也不支持,为一个文件过期模块不值得装,我们可以通过常用的mod_header模块实现同样的功能,同样方法添加到.htaccess文件中:
<ifmodule mod_headers.c>
//ico|pdf|flv|jpg|jpeg|png|gif|swf格式的文件缓存一年
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=29030400, public"
</FilesMatch>
//js|css格式的文件缓存一个月
<FilesMatch "\.(js|css)$">
Header set Cache-Control "max-age=2629743, public"
</FilesMatch>
//html|htm|txt格式的文件缓存一天
<FilesMatch "\.(html|htm|txt)$">
Header set Cache-Control "max-age=86400, public"
</FilesMatch>
</ifmodule>
相关文章推荐
- apache下用expires_module让浏览器缓存静态文件
- 【转】 防止浏览器缓存css,js静态文件
- apache下用expires_module让浏览器缓存静态文件
- 再论怎么有效利用浏览器缓存之------怎么避免浏览器缓存静态文件
- 防止浏览器缓存css,js静态文件
- 解决加载静态文件无法被浏览器缓存问题
- 再论怎么有效利用浏览器缓存之------怎么避免浏览器缓存静态文件.
- [分享黑科技]纯js突破localstorage存储上线,远程抓取图片,并转码base64保存本地,最终实现整个网站所有静态资源离线到用户手机效果却不依赖浏览器的缓存机制,单页应用最新黑科技
- 怎么避免浏览器缓存静态文件(js/css/img)
- apache下用expires_module让浏览器缓存静态文件
- 防止浏览器缓存css,js静态文件
- 浏览器加载静态文件时,是否使用浏览器已缓存的文件的相关策略。
- 防止浏览器缓存css,js静态文件
- 再论怎么有效利用浏览器缓存之------怎么避免浏览器缓存静态文件
- 网站静态文件缓存的处理
- Web 解决浏览器缓存js,css等静态文件的方法
- 防止浏览器缓存css,js静态文件
- apache下用expires_module让浏览器缓存静态文件
- NET Core静态文件的缓存方式
- Nginx设置Js、Css等静态文件的缓存过期时间