静态资源类型
Nginx 作为静态资源 Web 服务器部署配置, 传输⾮常的⾼效, 常常⽤于静态资源处理, 请求, 动静分离
⾮服务器动态运⾏⽣成的⽂件属于静态资源
类型 | 种类 |
---|---|
浏览器端渲染 | HTML、CSS、JS |
图片 | JPEG、GIF、PNG |
视频 | FLV MP4 |
文件 | TXT 任意下载文件 |
静态资源场景
静态资源传输延迟最⼩化
静态资源配置语法
1.⽂件读取⾼效 sendfile
Syntax: sendfile on | off;
Default: sendfile off;
Context: http, server, location, if in location2.提⾼⽹络传输效率 nopush
Syntax: tcp_nopush on | off;
Default: tcp_nopush off;
Context: http, server, location
作⽤: sendfile开启情况下, 提⾼⽹络包的’传输效率’2.与 tcp_nopush 之对应的配置 tcp_nodelay
Syntax: tcp_nodelay on | off;
Default: tcp_nodelay on;
Context: http, server, location
作⽤: 在keepalive连接下,提⾼⽹络的传输’实时性’
静态资源⽂件压缩
Nginx 将响应报⽂发送⾄客户端之前可以启⽤压缩功能,这能够有效地节约带宽,并提⾼响应⾄ 客户端的速度。
1.gzip 压缩配置语法
Syntax: gzip on | off;
Default: gzip off;
Context: http, server, location, if in location
作⽤: 传输压缩
2.gzip 压缩⽐率配置语法
Syntax: gzip_comp_level level;
Default: gzip_comp_level 1;
Context: http, server, location
作⽤: 压缩本身⽐较耗费服务端性能
3.gzip 压缩协议版本
Syntax: gzip_http_version 1.0 | 1.1;
Default: gzip_http_version 1.1;
Context: http, server, location
作⽤: 压缩使⽤在http哪个协议, 主流版本1.1
4.扩展压缩模块
Syntax: gzip_static on | off | always;
Default: gzip_static off;
Context: http, server, location
作⽤: 预读gzip功能
图⽚压缩案例
创建网页存放目录 并使用rz
上传一张动态图片
mkdir -p /soft/code/images
cd /soft/code/images/
yum -y install lrzsz
rz
vi /usr/local/nginx/conf/nginx.conf
server {
listen 80;
server_name 192.168.1.1;
location ~ .*\.(jpg|gif|png)$ {
sendfile on;
gzip_http_version 1.1;
gzip_comp_level 9;
gzip_types text/plain application/json application/x-javascript application/css application/xml application/xml+rss text/javascript application/x-httpd-php image/jpeg image/gif image/png;
root /soft/code/images;
index index.html index.htm;
}
systemctl restart nginx ##重启nginx服务
访问:
http://192.168.1.1/1.gif
然后打开Fiddler 4进行抓包
下载地址点击获取
提取码:t9tj
没有开启 gzip 图⽚压缩
启⽤ gzip 压缩图⽚后(由于图⽚之前压缩过, 所以压缩⽐率不太明显)