怎么在nginx中配置缓存静态文件

发布时间:2022-04-29 14:29:34 作者:iii
来源:亿速云 阅读:178

本文小编为大家详细介绍“怎么在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 指令中使用以下的时间设置:

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

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

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

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

expires modified 10d;

3 测试

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

怎么在nginx中配置缓存静态文件

读到这里,这篇“怎么在nginx中配置缓存静态文件”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。

推荐阅读:
  1. 详解Nginx 静态文件服务配置及优化
  2. Nginx如何配置静态文件服务器

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

nginx

上一篇:LINUX服务器配置HTTPS的方法

下一篇:ubuntu下的nginx服务器配置实例分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》