Nginx如何设置HTML、JS、CSS和图片等文件的缓存时间?
处理HTML、JS、CSS和图片等静态文件的请求可是Nginx最拿手的事情,本文介绍Nginx的静态资源缓存时间的设置方法。
在你的站点配置文件中加入:
location ~.*\.(js|css|html|png|jpg)$ { expires 6h; }
expires
的设置:
- expires max; ##表示缓存10年
- expires 1d; ##表示缓存1天
- expires 6h; ##表示缓存6小时
- expires -1; ##表示不做任何缓存
如何为不同的文件独立设置缓存时间?
比如jpg|png等图片文件几乎不怎么需要更新需要很长缓存时间,而js/css可能更新频率稍高一点,html文件更新频率最高,那么你可以复制上面的参数,只做出几个版本针对不同的文件后缀:
location ~.*\.(html)$ { expires 6h; ## html文件缓存6个小时 } location ~.*\.(js|css)$ { expires 7d; ## js/css文件缓存7天 } location ~.*\.(png|jpg)$ { expires 30d; ## png/jpg文件缓存30天 }
是不是很简单?