nginx动静资源

静态资源web服务

静态资源类型

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

静态资源服务场景

  • CDN(内容分发网络)

配置相关

配置语法-文件读取

  • –with-file-aio 异步文件读取
    • Syntax:sendfile on|off;
    • Default:sendfile off;
    • Context:http,server,location,if in location;

配置语法-tcp_nopush

  • 作用:sendfile开启的情况下,提高网络包的传输效率。将多个包整合在一起,统一的一次性发送。
    • Syntax:tcp_nopush on|off;
    • Default:tcp_nopush off;
    • Context:http,server,location;

配置语法-tcp_nodelay

  • 作用:keepalive连接下,提高网络包的传输实时性
    • Syntax:tcp_nopush on|off;
    • Default:tcp_nopush off;
    • Context:http,server,location;

配置语法-压缩

  • 压缩传输
    • 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;

扩展Nginx压缩模块

  • http_gzip_static_module 预读gzip功能

  • http_gunzip_module 应用支持gunzip的压缩方式

浏览器的缓存

  • HTTP协议定义的缓存机制(Expires;Cache-control)

浏览器无缓存

客户端有缓存

校验过期的机制

中文名称 参数
校验是否过期 Expires、Cache-Control(max-age)
协议中Etag头信息校验 Etag
Last-Modified头信息校验 Last-Modified

设置缓存过期周期

  • 相关参数:添加Cache-Control、Expires头信息
    • Syntax:expires [modified] time ; expires epoch | max | off;

    • Default:expires off;

    • Context:http,server,location;

防盗链

  • 目的:防止网站的资源被盗用

设置的思路

  • 基于http_refer防盗链配置模块

  • 首要方式:区别那些请求是非正常的用户请求

    • Syntax:valid_referers none | blocked | server_names | string ;
    • Context:location;

代理服务

正向代理

使用场景:早期一个公司里面所有的电脑只有一台能够上网,在浏览器中配置代理的地址,通过这个代理服务器来上网
例如就是:翻墙访问国外的相关网站,必须使用代理服务器才行

反向代理

正向代理和反向代理的区别

  • 区别在于代理的对象不一样
    • 正向代理的对象是客户端
    • 反向代理的对象是服务端

配置语法

  • Syntax:proxy_pass URL;

  • Default:——

  • Context:location,if in location,limit_except;

  • 常见的代理方式

    • http://localhost:8000/uri
    • https://ip:8000/uri
    • http://unix:/tmp/backend.socket:/uri

负载均衡调度器SLB

[root@docker ~]# pcretest
PCRE version 8.32 2012-11-30

re> /(\d+).(\d+).(\d+).(\d+)/
data> 192.168.4.7
0: 192.168.4.7
1: 192
2: 168
3: 4
4: 7
data>

#动态缓存

nginx动静资源》有2个想法

  1. Excellent read, I just passed this onto a colleague who was doing a little research on that. And he actually bought me lunch because I found it for him smile So let me rephrase that: Thanks for lunch!

发表评论

电子邮件地址不会被公开。 必填项已用*标注