Nginx设置expires设定页面缓存时间 不缓存或一直使用缓存

配置expires
expires起到控制页面缓存的作用,合理的配置expires可以减少很多服务器的请求
要配置expires,可以在http段中或者server段中或者location段中加入

       location ~ \.(gif|jpg|jpeg|png|bmp|ico)$ {
           root /var/www/img/;
           expires 30d;
       }

控制图片等过期时间为30天,当然这个时间可以设置的更长。具体视情况而定
比如

       location ~ \.(wma|wmv|asf|mp3|mmf|zip|rar|swf|flv)$ {
               root /var/www/upload/;
               expires max;
       }

expires 指令可以控制 HTTP 应答中的“ Expires ”和“ Cache-Control ”的头标(起到控制页面缓存的作用)
语法:expires [time|epoch|max|pff]
默认值:off
expires指令控制HTTP应答中的“Expires”和“Cache-Control”Header头部信息,启动控制页面缓存的作用
time:可以使用正数或负数。“Expires”头标的值将通过当前系统时间加上设定time值来设定。
time值还控制"Cache-Control"的值:
负数表示no-cache
正数或零表示max-age=time

epoch:指定“Expires”的值为 1 January,1970,00:00:01 GMT
max:指定“Expires”的值为31 December2037 23:59:59GMT,"Cache-Control"的值为10年。
-1:指定“Expires”的值为当前服务器时间-1s,即永远过期。
off:不修改“Expires”和"Cache-Control"的值

expires使用了特定的时间,并且要求服务器和客户端的是中严格同步。
而Cache-Control是用max-age指令指定组件被缓存多久。
对于不支持http1.1的浏览器,还是需要expires来控制。所以最好能指定两个响应头。但HTTP规范规定max-age指令将重写expires头。

文章转至:http://www.qiansw.com/nginx-expires.html

时间: 2024-10-10 16:11:23

Nginx设置expires设定页面缓存时间 不缓存或一直使用缓存的相关文章

nginx设置404 500页面跳转至首页,K哥

2015.9.29 开发找我说网站要设置个页面跳转 nginx设置404 500页面跳转至首页 什么是404页面? 如果碰巧网站出了问题,或者用户试图访问一个并不存在的页面时,此时服务器会返回代码为404的错误信息,此时对应页面就是404页面.404页面的默认内容和具体的服务器有关.如果后台用的是NGINX服务器,那么404页面的内容则为:404 Not Found 为什么要自定义404页面? 在访问时遇到上面这样的404错误页面,我想99%(未经调查,估计数据)的用户会把页面关掉,用户就这样悄

nginx设置自定义错误页面

首先要进入到网页目录下 cd /usr/local/nginx/html/ 将准备好的错误界面的图片上传 rz -E 编写一个错误界面的网页文件 vim 40x.html  在里面写入: <img src="error.jpg" /> 接下来要编辑主配置文件 vim /usr/local/nginx/conf/nginx.conf 添加内容: error_page 401 403 404 408 /40x.html; location = /40x.html { root

nginx优化,隐藏版本号,修改用户和组,网页缓存时间,更改进程数,以及防盗链

设置nginx优化隐藏版本号,修改用户和组,网页缓存时间,更改进程数, 以及防盗链的代码内容 ========================隐藏版本号,修改用户和组 方法一: cd /opt/nginx-1.12.0/src/core vim nginx.h #define NGINX_VERSION "1.12.0" //在编译安装前去篡改版本号达到隐藏的效果 方法二: vim /usr/local/nginx/conf/nginx.conf server_tokens off;

nginx设置缓存策略

1. 问题-背景 以前也经常用nginx,但用的不深,通常是简单的设置个location用来做反向代理.直到今天给客户做项目碰到缓存问题:客户有个app,只是用原生做了个壳,里面的内容都是用h5写的,我们半途接手将新版本静态资源部署到服务器上后,发现手机端一直显示老的页面,一抓包,发现手机端根本就没有去请求新的html页面,定位是缓存问题. 2. 配置 乍一看,客户原来的配置好像没什么问题,该有的也全有了 # 这是客户原来的配置 server { listen 80 default_server

Nginx优化---隐藏版本号与网页缓存时间

配置Nginx隐藏版本号 在生产环境中,需要隐藏Nginx的版本号,以避免安全漏洞的泄漏 查看方法●使用fiddler I具在Windows客户端查看Nginx版本号在CentOS系统中使用"curl -I 网址"命令查看 Nginx隐藏版本号的方法●修改配置文件法●修改源码法 修改配置文件法 1.Nginx的配置文件中的server_ tokens 选项的值设置为off [[email protected] conf]# vim nginx.conf ..... server_ to

Nginx服务优化(三)配置网页缓存时间

配置Nginx网页缓存时间 当Nginx将网页数据返回给客户端后,可设置缓存的时间,以方便在日后进行相同内容的请求时直接返回,避免重复请求,加快了访问速度.一般针对静态网页设置,对动态网页不设置缓存时间.可在Windows客户端中使用fiddler查看网页缓存时间. 设置方法 可修改配置文件,在http段.或者server段. 或者location段加入对特定内容的过期参数 1.将图片复制到站点目录 [[email protected] nginx-1.12.2]# cd /mnt/tools/

nginx 缓存时间说明

    Cached data that are not accessed during the time specified by the inactive parameter get removed from the cache regardless of their freshness. By default,inactive is set to 10 minutes. (被缓存的数据如果在inactive参数指定的时间内未被访问,就会被从缓存中移除,不论它是否是刚产生的.inactive

设置ASP.NET页面的运行超时时间详细到单个页面及站点

这篇文章主要介绍了如何设置ASP.NET页面的运行超时时间,包括全局超时时间.单个站点超时时间.单个页面请求超时时间,需要的朋友可以参考下 全局超时时间 服务器上如果有多个网站,希望统一设置一下超时时间,则需要设置 Machine.config 文件中的 ExecutionTimeout 属性值. Machine.config 文件位于 %SystemRoot%\Microsoft.NET\Framework\%VersionNumber%\CONFIG\ 目录中. 例如: <httpRunti

servlet设置缓存时间以及文件的下载

缓存时间的设置: 1 public void doGet(HttpServletRequest request, HttpServletResponse response) 2 throws ServletException, IOException { 3 4 response.setContentType("text/html;charset=UTF-8"); 5 PrintWriter out = response.getWriter(); 6 response.setDateH