广告
返回顶部
首页 > 资讯 > 前端开发 > html >怎么在nginx中缓存静态文件
  • 766
分享到

怎么在nginx中缓存静态文件

2024-04-02 19:04:59 766人浏览 安东尼
摘要

这篇文章将为大家详细讲解有关怎么在Nginx中缓存静态文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、准备事项我想你需要一个正常工作的 nginx 软件,就像这篇教

这篇文章将为大家详细讲解有关怎么在Nginx缓存静态文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

1、准备事项

我想你需要一个正常工作的 nginx 软件,就像这篇教程里展示的:在 ubuntu 16.04 LTS 上安装 Nginx,PHP 7 和 Mysql  5.7 (LEMP)。

2 配置 nginx

可以参考 expires 指令手册来设置 Http 头部过期时间,这个标记可以放在 http {}、server {}、location {}  等语句块或者 location {} 语句块中的条件语句中。一般会在 location 语句块中用 expires 指令控制你的静态文件,就像下面一样:

location ~*  \.(jpg|jpeg|png|gif|ico|CSS|js)$ {    expires 365d; }

在上面的例子中,所有后缀名是 .jpg、 .jpeg、 .png、 .gif、 .ico、 .css 和 .js 的文件会在浏览器访问该文件之后的 365  天后过期。因此你要确保 location {} 语句块仅仅包含能被浏览器缓存的静态文件。

然后重启 nginx 进程:

/etc/init.d/nginx reload

你可以在 expires 指令中使用以下的时间设置:

  • off 让 Expires 和 Cache-Control 头部不能被更改。

  • epoch 将 Expires 头部设置成 1970 年 1 月 1 日 00:00:01。

  • max 设置 Expires 头部为 2037 年 12 月 31 日 23:59:59,设置 Cache-Control 的***存活时间为 10  年

  • 没有 @ 前缀的时间意味着这是一个与浏览器访问时间有关的过期时间。可以指定一个负值的时间,就会把 Cache-Control 头部设置成  no-cache。例如:expires 10d 或者 expires 14w3D

  • 有 @ 前缀的时间指定在一天中的某个时间过期,格式是 Hh 或者 Hh:Mm,H 的范围是 0 到 24,M 的范围是 0 到 59,例如:expires  @15:34。

你可以用以下的时间单位:

  • ms: 毫秒

  • s: 秒

  • m: 分钟

  • h: 小时

  • d: 天

  • w: 星期

  • M: 月 (30 天)

  • y: 年 (365 天)

例如:1h40m 表示一小时三十分钟,1y6M 表示一年六个月。

注意,要是你用一个在将来很久才会过期的头部,当组件修改时你就要改变组件的文件名。因此给文件指定版本是一个不错的方法。例如,如果你有个  javascript.js 文件  并且你要修改它,你可以在修改的文件名字后面添加一个版本号。这样浏览器就要下载这个文件,如果你没有更改文件名,浏览器将从缓存里面加载(旧的)文件。

除了把基于浏览器访问时间设置 Expires 头部(比如 expires 10d)之外,也可以通过在时间前面的 modified 关键字,将  Expires 头部的基准设为文件修改的时间(请注意这仅仅对存储在硬盘的实际文件有效)。

expires modified 10d;

3 测试

测试你的配置是否有效,可以用火狐浏览器的开发工具中的网络分析功能,然后用火狐访问一个静态文件(比如一张图片)。在输出的头部信息里,应该能看到  Expires 头部和有 max-age 标记的 Cache-Control 头部(max-age 标记包含了一个以秒为单位的值,比如 31536000  就是指今后的一年)

怎么在nginx中缓存静态文件

4 链接

nginx 的 Http 头部模块(HttpHeadersModule):  http://wiki.nginx.org/HttpHeadersModule

关于“怎么在nginx中缓存静态文件”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: 怎么在nginx中缓存静态文件

本文链接: https://www.lsjlt.com/news/75643.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么在nginx中缓存静态文件
    这篇文章将为大家详细讲解有关怎么在nginx中缓存静态文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、准备事项我想你需要一个正常工作的 nginx 软件,就像这篇教...
    99+
    2022-10-19
  • Nginx中怎么配置静态文件
    本篇文章为大家展示了Nginx中怎么配置静态文件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。###################################...
    99+
    2022-10-19
  • laravel静态文件如何缓存清除
    本篇内容介绍了“laravel静态文件如何缓存清除”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!原理首先,让我们看看浏览器如何缓存静态文件。...
    99+
    2023-07-05
  • nginx php 不缓存文件怎么做
    本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。nginx php 不缓存文件怎么做?Nginx禁用缓存的配置在网站程序调试的时候,经常会遇到浏览器的缓存问题导致修改过的前端代码无效果。每次通过Ctrl+F5强制刷...
    99+
    2022-10-20
  • 使用SpringBoot2.x配置静态文件缓存
    HTTP浏览器缓存 对这部分知识不太熟悉的,可以先看一下这篇文章:HTTP浏览器缓存机制 配置文件yml配置 spring: resources: static-loca...
    99+
    2022-11-12
  • 怎么在nginx中使用rewrite 配置伪静态
    本篇文章为大家展示了怎么在nginx中使用rewrite 配置伪静态,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。正则表达式匹配,其中: * ~ 为区分大小写匹配 * ~* 为不...
    99+
    2023-06-08
  • 无需插件wordpress生成静态缓存文件的方法
    说起wordpress生成静态缓存的话首先想到的就是WP Super Cache插件,确实如此,大多数的wordpress站长们都在使用. 但是永远都有那些纠结完美派的人,不喜欢用插件的人也十分的多,而今天介绍的非插件搞...
    99+
    2022-06-12
    wordpress 生成静态
  • java静态类中缓存数据怎么实现
    在Java中,可以使用静态变量来实现数据的缓存。静态变量是与类关联的变量,它们在整个应用程序的生命周期内都保持不变,并且可以被所有类...
    99+
    2023-10-27
    java
  • 如何利用node实现静态文件缓存详解
    目录缓存缓存位置分类缓存设置headernode实现静态文件缓存强缓存思路代码实现效果展示协商缓存思路代码实现效果展示总结缓存 浏览器缓存(Brower Caching)是浏览器对...
    99+
    2022-11-12
  • Django中怎么处理静态文件
    本篇文章为大家展示了Django中怎么处理静态文件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.Django 对css静态文件的处理我们先来看Django 对css静态文件是怎么处理的,一起来实...
    99+
    2023-06-02
  • 静态文件怎么在Spring MVC中进行访问
    这篇文章将为大家详细讲解有关静态文件怎么在Spring MVC中进行访问,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。方案一:激活Tomcat的defaultServlet来处理静态文件Xm...
    99+
    2023-05-31
    springmvc
  • Nginx中怎么实现AWStats静态页面
    这期内容当中小编将会给大家带来有关Nginx中怎么实现AWStats静态页面,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1. 下载***版的AWStats,基本就是Pe...
    99+
    2022-10-19
  • 在Django中如何设置静态文件
    在Django中设置静态文件需要进行以下步骤:1. 在你的项目的根目录下创建一个名为`static`的文件夹。这个文件夹将用来存放你...
    99+
    2023-10-09
    Django
  • 怎么访问到css静态文件
    这篇文章主要讲解了“怎么访问到css静态文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么访问到css静态文件”吧! 如果你的DispatcherSe...
    99+
    2022-10-19
  • .htaccess伪静态文件怎么编辑
    这篇文章主要讲解了“.htaccess伪静态文件怎么编辑”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“.htaccess伪静态文件怎么编辑”吧! 伪静态文...
    99+
    2022-10-19
  • htaccess伪静态文件怎么下载
    这篇文章主要介绍“htaccess伪静态文件怎么下载”,在日常操作中,相信很多人在htaccess伪静态文件怎么下载问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”htacce...
    99+
    2022-10-19
  • Django实现静态文件缓存到云服务的操作方法
    一般与页面有关的系统都会有大量的静态文件,包括js、css以及图标图片等,这些文件一般是项目的相对路径,在加载的时候会从本地读取再转发出去。由于这类文件一般比较大,导致接口响应变长,...
    99+
    2022-11-12
  • Django动态怎么设置静态文件路径
    本篇内容主要讲解“Django动态怎么设置静态文件路径”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Django动态怎么设置静态文件路径”吧!前言Django项目需要在settings.py文件...
    99+
    2023-06-29
  • SpringBoot怎么实时刷新静态文件
    小编给大家分享一下SpringBoot怎么实时刷新静态文件,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!方案Spring Boot在MVC中有个WebMvcProperties的配置类,还有个ResourcePropert...
    99+
    2023-06-22
  • linux怎么查看静态编译文件
    要查看Linux系统中的静态编译文件,可以使用以下方法:1. 使用file命令:file命令可以用于确定文件类型。在终端中输入以下命...
    99+
    2023-09-08
    linux
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作