Nginx设置js、css过期时间方法

 

  Nginx如何设置Js、css等文件的过期时间

  首先打开配置文件/etc/nginx/nginx.conf,然后找到下面这句话:

  location~ .*.(gif|jpg|png|htm|html|css|js|flv|ico|swf)(.*) {

  expires 30d;

  }

  设置expires这个参数即可,30d表示30天,注意后面有个分号“;”。

  如果过期时间为小时,则用“h”,如“expires 1h;”表示文件缓存在1小时后过期。看看下面的范例:

  #图片缓存30天

  location ~.*.(jpg|png|jpeg)$

  {

  expires 30d;

  }

  #js css缓存一小时

  location ~.*.(js|css)?$

  {

  expires 1h;

  }

  语法解释

  nginx作为web服务器,有时需要让浏览器缓存(Browser Caching) 是为了加速浏览并节约网络资源,浏览器在用户磁盘上对最近请求过的文档进行存储。

  nginx通过expires指令来设置浏览器的Header

  语法: expires [time|epoch|max|off]

  默认值: expires off

  作用域: http, server, location

  使用本指令可以控制HTTP应答中的“Expires”和“Cache-Control”的头标,(起到控制页面缓存的作用)。

  可以在time值中使用正数或负数。“Expires”头标的值将通过当前系统时间加上您设定的 time 值来获得。

  epoch 指定“Expires”的值为 1 January, 1970, 00:00:01 GMT。

  max 指定“Expires”的值为 31 December 2037 23:59:59 GMT,“Cache-Control”的值为10年。

  -1 指定“Expires”的值为服务器当前时间;-1s,表示永远过期,即不缓存文件。

  如何检测网页过期设置是否生效?

  打开webkaka的网站速度诊断工具(在线测试工具网址如下图),输入你的网页地址,检测后,立即可以看到设置是否生效了。


  检测网页缓存是否生效

  上图看到,被检测网页的js、css文件过期时间为1天。

时间: 2024-12-17 18:01:57

Nginx设置js、css过期时间方法的相关文章

asp中设置session过期时间方法总结

 如果程序中没有设置session的过期时间,那么session过期时间就会按照IIS设置的过期时间来执行,IIS中session默认过期时间为20分钟,IIS中session时间可以更改   如果程序中设置了session过期时间,那么,即使你将IIS中session时间设置100小时也没有用,因为程序会首先按照程序中设置,只有程序没设置的情况下才会按照IIS设置的 时间设置要放在前面 例如  代码如下   Session.Timeout=30 'SEESION有效时间为30分钟  Sessi

asp中设置session过期时间方法总结_应用技巧

如果程序中没有设置session的过期时间,那么session过期时间就会按照IIS设置的过期时间来执行,IIS中session默认过期时间为20分钟,IIS中session时间可以更改 时间设置要放在前面 例如 复制代码 代码如下: Session.Timeout=30 'SEESION有效时间为30分钟 Session("ID")=Rs("id") Session("Name")=Rs("Name") Session(&q

Yii2中使用asset压缩js,css文件的方法_php实例

官网文档 http://www.yiiframework.com/doc-2.0/guide-structure-assets.html yii目录下运行 asset/template assets.php 生成assets.php,这是一个配置模板,并修改如下 <?php /** * Configuration file for the "yii asset" console command. */ // In the console environment, some pat

Yii2中使用asset压缩js,css文件的方法

官网文档 http://www.yiiframework.com/doc-2.0/guide-structure-assets.html yii目录下运行 asset/template assets.php 生成assets.php,这是一个配置模板,并修改如下 <?php /** * Configuration file for the "yii asset" console command. */ // In the console environment, some pat

Nginx设置Js、Css等静态文件的缓存过期时间

location ~.*\.(js|css|html|png|jpg)$ { expires 3d; } expires    3d; //表示缓存3天 expires    3h; //表示缓存3小时 expires    max; //表示缓存10年 expires    -1; //表示永远过期. 如果设置为-1在js.css等静态文件在没有修改的情况下返回的是http 304,如果修改返回http 200 http 304:自从上次请求后,请求的网页未修改过.服务器返回此响应时,不会返回

Nginx 图片 js文件缓存配置方法

我们下面来把gif|jpg|jpeg|png|bmp|swf给缓存起来,配置如下 打开nginx.conf配置文件在http层级加入以下代码  代码如下 复制代码 proxy_connect_timeout 10; proxy_read_timeout 180; proxy_send_timeout 5; proxy_buffer_size 16k; proxy_buffers 4 64k; proxy_busy_buffers_size 256k; proxy_temp_file_write_

在ASP.NET中,设置Session的过期时间的方法_实用技巧

方法一:      在后台应用程序中设置:Session.Timeout = 1;     注意:1.此方法可以设置在一个公共的页面中,然后直接调用即可.             2.时间是以分钟为单位的 方法二:      在Web.config中设置:      在<system.web></system.web>中写入<sessionState mode="InProc" timeout="1" />

linux中Nginx设置目录密码保护3种方法

当不允许公开访问时一些网站路径时,比如网站后台密码,我们给利用Web服务器给路径加密认证,只用输入正确的用户名和密码才能进去访问.Apache有这样的功能,Nginx也可以.下面简单介绍Nginx给某些路径加密. 生成密码 方法一.用 Apache 的 htpasswd 工具来创建用户密码文件 使用htpasswd的前提是你已经安装apache. # htpasswd -b -c filename username passwd Adding password for user ****** f

nginx 设置网站目录访问验证方法

1.创建类htpasswd文件 执行:  代码如下 复制代码 wget -c soft.vpser.net/lnmp/ext/htpasswd.sh;bash htpasswd.sh 按提示输入用户名.密码.及认证文件名.脚本会自动生成认证文件.记录下脚本返回的文件路径.如:/usr/local/nginx/conf/vpser.net.auth. 2.为Nginx添加auth认证配置 下面是以某域名下面的soft目录为例,在域名的server段里加上如下代码:  代码如下 复制代码 locat