• nginx常规扩展功能


    功能 语法 配置位置 配置举例 结果验证 备注
    文件读取 sendfile on|off ===>(提高读取静态文件效率。直接通过系统内核将文件放入socket,不必再打开一遍) http、server、location、if in location这一级来配置 location / {
            root   /usr/share/nginx/html;
            index  index.html index.htm;
            sendfile on
    }
       
    数据传输

    1、tcp_nopush on|off ===>(senffile开启的情况下,提高数据包的传输效率。即:攒够一定量的包再一起发送,而不是来一个包发一个包)

    2、tcp_nodelay on|off ===>(长连接下(keepalive),提高数据包传输实时性。即:来一个包发一个包。适用于对网络实时性要求比较高的场景)

    1、http、server、location这一级来配置
    2、http、server、location这一级来配置
    location / {
            root   /usr/share/nginx/html;
            index  index.html index.htm;
            tcp_nopush on
            tcp_nodelay on
    }
       
    数据压缩 1、gzip on|off
    2、gzip_http_version 1.1|1.0
    3、gzip_comp_level 级别
    4、gzip_types image/png
    1、http、server、location、if in location这一级来配置
    2、http、server、location这一级来配置
    location ~ .*.(jpg|gif|png)$ {
            gzip off;
            gzip_http_version 1.1;
            gzip_comp_level 2;
            gzip_types 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;
        }
      1、2、3、4步组合成一个功能
    缓存时间设置 expires [modified] time;
    expires epoch|max|off;
    server、location、if in location这一级来配置      
    防盗链(本质是依据refere来限制) valid_referers none|blocked|string...
    valid_referers为关键字,后跟允许从哪些地址过来访问(即允许的refer)
    none代表允许没有带refer信息的过来访问
    blocked代表允许不带协议信息的refer过来访问(即cctv.com,前面没有http://信息)
    string代表支持哪些refer来访问(例:refer=http://qq.com, string指的是qq.com这部分)(string支持正则表达式)
    server、location这一级来配置 location /download {
            gzip_static off;
            tcp_nopush off;
            alias /opt/app/code;
            valid_referers none blocked;
            if ($invalid_referer){
                    return 403;
            }
        }
    curl -e "http://172.20.163.127" -I http://172.20.163.99/download/2.txt(成功)
    curl -e "http://www.qq.com" -I http://172.20.163.99/download/2.txt(失败)
    $invalid_referer:如果valid_referers后面没有值则$invalid_referer为真
  • 相关阅读:
    mysql存储过程笔记
    mysql 命令行操作
    第一天前来报到
    Android Studio导入工程版本问题、gradle版本问题
    LogUtils-定制自己的日志工具
    Git2.11安装下载和github使用
    Android Studio 2.3版本 以及相应的gradle3.3包
    android 导入第三方jar包和类库
    GifView——Android显示GIF动画
    Android中dip、dp、sp、pt和px的区别详解
  • 原文地址:https://www.cnblogs.com/baihualin/p/10896785.html
Copyright © 2020-2023  润新知