Nginx静态资源Web服务
1.原理
2.静态资源类型
3.静态资源服务场景-CDN
配置语法
1.配置语法,文件读取
Syntax:sendfile on|off;
Default:sendfile off;
Context:http,server,location,if in location
引读:--with-file-aio 异步文件读取
2.配置语法-tcp_nopush
Syntax:tcp_nopush on | off;
Default:tcp_nopush off;
Context:http,server,location
作用:sendfile开启的情况下,提高网络包的传输效率,将多个文件,一次传输
3.配置语法-tcp_nodelay
Syntax:tcp_nodelay on | off;
Default:tcp_nodelay on;
Context:http,server,location
作用:keepalive连接下,提高网络包的传输实时性,与上个语法的作用相反
4.配置语法-压缩
Syntax:gzip on | off;
Default:gzip off;
Context:http,server,location,if in location
作用:压缩传输
5.配置语法-压缩比率
Syntax:gzip_comp_level level;
Default:gzip_comp_level 1;
Context:http,server,location
6.配置语法-压缩http协议的版本
Syntax:gzip_http_version 1.0 | 1.1;
Default:gzip_http_version 1.1;
Context:http,server,location
7.扩展Nginx压缩模块
http_gzip_static_module - 预读gzip功能 # 预先将文件压缩
http_gunzip_module - 应用支持gunzip的压缩方式 # 只用于部分浏览器不支持解压的时候才用到
演示压缩文件
将一个test.png格式的文件,放在下列目录
/opt/app/code/images
检查语法后,重启nginx
访问192.168.96.188/test.png。此时的图片为1.1M
将配置文件修改如下
修改好以后,重启nginx
再次访问192.168.96.188/test.png
再次查看图片被压缩。
相对于图片,文件的比例压缩会更大一下
直接将10M的txt文件压缩成了72kb
http_gzip_static_module - 预读gzip功能,演示
在download目录下,上传一个10M的test.img文件,目前语法是关闭
使用gzip test.img压缩文件(预读压缩)
这时候访问192.168.96.188/test.img。会发生报错
修改配置文件,加入如下配置
同样访问192.168.96.188/download/test.img,可以正常访问了
原文地址:https://www.cnblogs.com/joy-sir/p/12162427.html
- Java8读文件方法代码学习
- .NET ORM 的 “SOD蜜”--零基础入门篇
- 【Spark研究】用Apache Spark进行大数据处理之入门介绍
- DataSet的灵活,实体类的方便,DTO的效率:SOD框架的数据容器,打造最适合DDD的ORM框架
- Java 内部类种类及使用解析
- JSON与XML的区别比较
- 无需开启宏即可渗透:在Office文档中利用DDE执行命令
- SQLiv:一款批量SQL注入漏洞扫描工具
- 【Python环境】监督学习之KNN算法
- 【数据科学】什么是数据科学家与数据科学
- Android基础总结(12)——XML和JSON解析
- 【Python环境】scikit-learn的线性回归模型
- Android基础总结(8)——服务
- 你需要每天写代码吗?
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 备忘:美化pymol作图1
- 宿舍(寝室)管理系统设计与实现 | 附 演示、源码地址
- Oracle字符集检查和修改
- Vue3 DOM Diff 核心算法解析
- PHP的LZF压缩扩展工具
- Python函数定义及参数详解
- 代码失而复得心塞往事 - git stash命令
- 如何通过 Shell 监控异常等待事件和活跃会话
- PHP中环境变量的操作
- 一文读懂JAVA并发容器类ConcurrentHashMap
- Creator3D新版本震撼来袭
- SpringBoot源码学习(十)-Spring类级别注解解析原理
- 从安全切面到Security Mesh
- SpringBoot源码学习(十一) - bean的实例化过程
- 每天一杯力扣快乐水