百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Nginx缓存设置教程

off999 2025-01-08 16:28 25 浏览 0 评论

这篇文章主要介绍了Nginx缓存设置案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下

在开发调试web的时候,经常会碰到因浏览器缓存(cache)而经常要去清空缓存或者强制刷新来测试的烦恼,提供下apache不缓存配置和nginx不缓存配置的设置。在常用的缓存设置里面有两种方式,都是使用add_header来设置:分别为Cache-Control和Pragma。

nginx:
location ~ .*\.(css|js|swf|php|htm|html )$ {
add_header Cache-Control no-store;add_header Pragma no-cache;
}

对于站点中不经常修改的静态内容(如图片,JS,CSS),可以在服务器中设置expires过期时间,控制浏览器缓存,达到有效减小带宽流量,降低服务器压力的目的。

以Nginx服务器为例:

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
#过期时间为30天,
#图片文件不怎么更新,过期可以设大一点,
#如果频繁更新,则可以设置得小一点。
expires 30d;
}
location ~ .*\.(js|css)$ {
expires 10d;
}

【背景】:Expires是Web服务器响应消息头字段,在响应http请求时告诉浏览器在过期时间前浏览器可以直接从浏览器缓存取数据,而无需再次请求。

【相关资料】

1、Cache-control策略

Cache-Control与Expires的作用一致,都是指明当前资源的有效期,控制浏览器是否直接从浏览器缓存取数据还是重新发请求到服务器取数据。只不过Cache-Control的选择更多,设置更细致,如果同时设置的话,其优先级高于Expires。

http协议头Cache-Control :

值可以是public、private、no-cache、no- store、no-transform、must-revalidate、proxy-revalidate、max-age

各个消息中的指令含义如下:

  • Public指示响应可被任何缓存区缓存。
  • Private指示对于单个用户的整个或部分响应消息,不能被共享缓存处理。这允许服务器仅仅描述当用户的部分响应消息,此响应消息对于其他用户的请求无效。
  • no-cache指示请求或响应消息不能缓存
  • no-store用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。
  • max-age指示客户机可以接收生存期不大于指定时间(以秒为单位)的响应。
  • min-fresh指示客户机可以接收响应时间小于当前时间加上指定时间的响应。
  • max-stale指示客户机可以接收超出超时期间的响应消息。如果指定max-stale消息的值,那么客户机可以接收超出超时期指定值之内的响应消息。

Last-Modified/If-Modified-Since

  • Last-Modified/If-Modified-Since要配合Cache-Control使用。
  • Last-Modified:标示这个响应资源的最后修改时间。web服务器在响应请求时,告诉浏览器资源的最后修改时间。
  • If-Modified-Since:当资源过期时(使用Cache-Control标识的max-age),发现资源具有Last-Modified声明,则再次向web服务器请求时带上头 If-Modified-Since,表示请求时间。web服务器收到请求后发现有头If-Modified-Since 则与被请求资源的最后修改时间进行比对。若最后修改时间较新,说明资源又被改动过,则响应整片资源内容(写在响应消息包体内),HTTP 200;若最后修改时间较旧,说明资源无新修改,则响应HTTP 304 (无需包体,节省浏览),告知浏览器继续使用所保存的cache。

其最终达到的就是等效于设置这三类html缓存技术:

<meta http-equiv="pragma" content="no-cache"/>
<meta http-equiv="Cache-Control" content="no-cache, must-revalidate"/>
<meta http-equiv="expires" content="0"/>

Nginx缓存设置教程 | 《Linux就该这么学》 (linuxprobe.com)

相关推荐

吉他调音器(吉他调音器怎么用)

吉他调音器是一种用于调整吉他音准的设备。它通常以电子设备的形式存在,可以通过精确的电子音频信号分析检测吉他弦的音高,然后显示当前弦的音准情况,帮助吉他手调整弦的张力以及正确的音高。吉他调音器可以有多种...

qq最新版qq(Qq最新版本)
  • qq最新版qq(Qq最新版本)
  • qq最新版qq(Qq最新版本)
  • qq最新版qq(Qq最新版本)
  • qq最新版qq(Qq最新版本)
access下载(access下载官网)

要下载并安装MicrosoftAccess,可以按照以下步骤进行操作:1.打开您的电脑的浏览器(如谷歌浏览器、火狐浏览器等)。2.在浏览器的搜索栏中输入"下载MicrosoftAcce...

oa协同办公管理平台(协同办公门户oa系统)

OA协同办公通常提供了流程审批的功能,具体步骤如下:1.登录OA协同办公系统,进入审批流程模块。2.创建新的审批流程,定义审批人员、审批步骤和审批条件等。3.在创建审批流程时,需要定义流程的各个...

二手车估价最准的软件(二手车估价平台哪个好)
二手车估价最准的软件(二手车估价平台哪个好)

你好,二手车的估价平台有很多种,面向的客户群体都不一样,以下将为你推荐几款估价的软件。一、车300车300他是专注于做二手车估价的,市面上很多家的估价的后台,都是他们直接对接的用的他们的一个数据库。他不涉及到二手车的交易,他主要是做估价以及...

2026-01-22 09:43 off999

360极速浏览器手机版(360极速浏览器手机版下载)

chrome.360.cn360极速浏览器是国内高端用户首选的浏览器。360极速浏览器在保证安全和稳定的基础上把“极速”做到极致,启动快,打开网页快。同时它界面简洁精致,还支持通过壁纸实现整体换肤,换...

悟饭模拟器(悟饭模拟器下载)

街机模拟器里,说比悟饭游戏厅更好的,用起来都没有悟饭游戏厅好。之前听了别人的用了别的,结果用起来还是悟饭游戏厅更好,不说别的,界面绝对是模拟器中最好看的,游戏资源也不少,对比界面其他的一看就像是山寨一...

手机ps软件中文版(手机ps简体中文版)

在手机版Photoshop中,您可以通过以下步骤将其语言从英文更改为中文:1.打开Photoshop应用程序并进入设置:从主界面打开Photoshop应用程序,然后点击“设置”图标。2.进入语言设...

手机桌面软件(手机桌面软件不见了怎样恢复)
  • 手机桌面软件(手机桌面软件不见了怎样恢复)
  • 手机桌面软件(手机桌面软件不见了怎样恢复)
  • 手机桌面软件(手机桌面软件不见了怎样恢复)
  • 手机桌面软件(手机桌面软件不见了怎样恢复)
口袋妖怪复刻官网下载(口袋妖怪复刻官网下载安装)

要在3ds上下载口袋妖怪始源红宝石721版本,您需要按照以下步骤进行操作:1.打开3dsMax或SketchUp软件,并创建一个新的项目。2.打开游戏文件所在的文件夹,找到“红宝石721.mds...

win7升级win10还免费吗(win7升级win10系统版本要钱吗)

 中国移动送七天10g免费流量哪里领取?如果你是在网上看到这种广告的话,你可以直接点击那个链接进去选择订阅,然后呢,如果订阅成功了,那平台就会直接给你发放这个流量,如果你是在实体店看到的这个...

photoshop下载安装教程(ps下载安装教程视频)

1.下载安装并激活Photoshop需要一定的步骤和技巧,但是只要按照正确的方法进行,就可以成功完成。2.首先需要从Adobe官网下载Photoshop的安装程序,然后按照提示进行安装。安装完成后...

防火墙软件下载(360防火墙app下载)

如果你的刚下载的软件被防火墙阻止了,你可以尝试以下方法解决问题。首先,确保你的防火墙设置允许该软件的访问权限。你可以在防火墙设置中找到应用程序列表,然后添加该软件到允许访问的列表中。如果你不确定如何进...

51漫画app下载安装在线观看(51漫画app下载安装免费下)

51动漫的登录账号,需要先在51动漫官方网站进行注册。注册完成后,便可用该账号在51动漫客户端进行登录。具体登录步骤是:打开51动漫客户端,点击右上角头像进行登录,在弹出的登录页面中输入注册时使用的账...

冒险岛手游官网下载(冒险岛手游 百度百科)

要下载冒险岛的官方游戏,请按照以下步骤操作:首先,打开您的网络浏览器,然后在搜索引擎中输入“冒险岛官网”。点击搜索结果中的官方网站链接,进入官方网站。在网站上,寻找游戏下载页面或下载按钮。点击下载按钮...

取消回复欢迎 发表评论: