1、静态资源类型

非服务器动态运行生成的文件

类型种类

浏览器端渲染     HTML、CSS、JS

图片            JPEG、GIF、PNG

视频            FLV、MPEG

文件            TXT、等任意下载文件

2、静态资源服务场景-CDN

配置语法

1、文件读取
Syntax:sendfile on l off;
Default:sendfile off;
Context:http,server,location,if in location
引读:一with-file-aid异步文件读取 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连接下,提高网络包的传输实时性

3、配置语法-压缩

Syntax:gzip on|off;
Default:gzip off;
Context:http,server,location,if in location
作用:压缩传输 Syntax: gzip_comp_level level;
Default: gzip_comp_level 1;
Context: http,server,location Syntax: gzip_http_version 1.0|1.1;
Default: gzip_http_version 1.1;
Context: http, server, location 扩展Nginx压缩模块
http_gzip_static_module -预读gzip功能
http_gunzip_module -应用支持gunzip的压缩方式

测试

server_static.conf

server {
listen 80;
server_name 10.0.0.6 www.web01.com; sendfile on;
access_log /var/log/nginx/log/static_access.log main; location ~ .*\.(jpg|gif|png)$ {
gzip on;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
root /opt/app/code/images;
} location ~ .*\.(txt|xml)$ {
gzip on;
gzip_http_version 1.1;
gzip_comp_level 1;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
root /opt/app/code/doc;
} location ~ .*\.(htm|html)$ {
add_header Access-Control-Allow-Origin *; #访问限制
add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;  #允许访问的方法
#expires 24h;
root /opt/app/code;
} location ~ ^/download {
gzip_static on;
tcp_nopush on;
root /opt/app/code;
} }

压缩前

F12调试时,注意关闭缓存

压缩后

对文本的压缩更大

[root@web-01 doc]# ls -lh

total 176K

-rw-r--r--. 1 root root 175K Aug 8 2017 access.txt

设置缓存

    location ~ .*\.(htm|html)$ {
expires 24h;
root /opt/app/code;
}

权限控制

    location ~ .*\.(jpg|gif|png)$ {
gzip on;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png; valid_referers none blocked 116.62.103.228 jeson.imoocc.com ~wei\.png;
if ($invalid_referer) {
return 403;
}
root /opt/app/code/images;
}

nginx 静态资源WEB服务的更多相关文章

  1. nginx静态资源web服务

    静态资源:非服务器动态运行生成的文件 浏览器端渲染:html ,css,js 图片:jpeg,gif,png 视频:flv ,mpeg 文件:txt,等任意下载文件 静态资源服务场景:CDN 文件读取 ...

  2. Nginx之静态资源WEB服务

    本篇主要记录学习Nginx的静态资源WEB服务的几种常见的功能记录学习 Nginx开发常用的命令 nginx -tc /etc/nginx/nginx.conf vim /etc/nginx/conf ...

  3. nginx 作为静态资源web服务

    Nginx作为静态资源web服务 静态资源web服务-CDN场景 Nginx资源存储中心会把静态资源分发给“北京Nginx”,“湖南Nginx”,“山东Nginx”. 然后北京User发送静态资源请求 ...

  4. Nginx作为静态资源web服务之防盗链

    Nginx作为静态资源web服务之防盗链 首先,为什么需要防盗链,因为有些资源存在竞争对手的关系,比如淘宝的商品图片,不会轻易的让工具来爬虫爬走收集.但是如果使用防盗链,需要知道上一个访问的资源,然后 ...

  5. Nginx作为静态资源web服务之跨域访问

    Nginx作为静态资源web服务之跨域访问 首先了解一下什么是跨域 跨域,指的是浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的,是浏览器施加的安全限制. 所谓同源是指,域名,协议,端口均相 ...

  6. Nginx作为静态资源web服务之文件读取

    Nginx作为静态资源web服务之文件读取 文件读取会使用到以下几个配置 1. sendfile 使用nginx作为静态资源服务时,通过配置sendfile可以有效提高文件读取效率,设置为on表示启动 ...

  7. Nginx作为静态资源web服务之缓存原理

    Nginx作为静态资源web服务之缓存原理 大致理一下http浏览器缓存原理: 浏览器第一次请求服务器,此时浏览器肯定没有缓存,则直接调用服务器端,服务器在返回的信息的信息头中添加 ETag和Last ...

  8. 学习nginx从入门到实践(五) 场景实践之静态资源web服务

    一.静态资源web服务 1.1 静态资源 静态资源定义:非服务器动态生成的文件. 1.2 静态资源服务场景-CDN 1.3 文件读取配置 1.3.1 sendfile 配置语法: syntax: se ...

  9. nginx实践(一)之静态资源web服务

    静态资源服务场景CDN 配置语法-文件读取(nginx优势之一sendfile) 配置语法-tcp_nopush 简单的说就是把多个包合并,一次传输给客户端 配置语法-tap_nodelay 配置语法 ...

随机推荐

  1. tensorflow学习之tf.assign

    tf.assign(ref, value, validate_shape=None, use_locking=None, name=None), 函数功能是将value赋值给ref ref必须是tf. ...

  2. django 的 MTV 流程图

  3. python可视化:matplotlib系列

    matplotlib 的官方文档: https://matplotlib.org/users/index.html 1 子图布局管理 布局参数 紧密布局的方法 坐标轴的公用和隐藏 2 直方图bar和b ...

  4. 2019 我的世界多了一个 Python

    大一时学过 C语言,大三时用 C 控制单片机,之后就没有别的和编程的交集了. 大约十天前下定决心学 Python,不开玩笑,版本我选 3. 其实我也不是 100% 的零基础,因为一方面,我学过 C:另 ...

  5. MapReduce计算模型二

    之前写过关于Hadoop方面的MapReduce框架的文章MapReduce框架Hadoop应用(一) 介绍了MapReduce的模型和Hadoop下的MapReduce框架,此文章将进一步介绍map ...

  6. Object.create()的使用方法

    Object.create()的使用方法:https://blog.csdn.net/wang252949/article/details/79109437

  7. fidder抓包工具使用方法,完整流程

    fidder抓包工具使用方法,完整流程 https://blog.csdn.net/lw545034502/article/details/82150779 版权声明:本文为博主原创文章,遵循 CC ...

  8. 51nod 1963 树上Nim

    这题还真就是树上玩 Nim... 相关知识点就是阶梯博弈,具体可以康这里 →_→ PS:手动搜索阶梯博弈 然后这题就转化为了多路径的阶梯博弈,这样的话咱定义根节点深度为 0,然后把所有奇数深度点的权值 ...

  9. Paper Reading_ML for system

    最近(以及预感接下来的一年)会读很多很多的paper......不如开个帖子记录一下读paper心得 SysML相关的文章很多来源于上学期的8980课.有些和具体field(比如DB/architec ...

  10. C++泛型程序设计---算法和提升

    算法和提升 算法:所谓算法就是一个求解问题的过程或公式,即,通过一个有穷的计算序列生成结果. 函数模板就是普通函数的泛化:它能对多种数据类型执行动作,并且能用以参数方式传递来的各种操作实现要执行的工作 ...