• Nginx配置文件nginx.conf有哪些属性模块?


    worker_processes 1; # worker进程的数量
    events { # 事件区块开始
    worker_connections 1024; # 每个worker进程支持的最大连接数
    } # 事件区块结束
    http { # HTTP区块开始
    include mime.types; # Nginx支持的媒体类型库文件
    default_type application/octet-stream; # 默认的媒体类型
    sendfile on; # 开启高效传输模式
    keepalive_timeout 65; # 连接超时
    server { # 第一个Server区块开始,表示一个独立的
    虚拟主机站点
    listen 80; # 提供服务的端口,默认80
    server_name localhost; # 提供服务的域名主机名
    location / { # 第一个location区块开始
    root html; # 站点的根目录,相当于Nginx的安装目录
    index index.html index.htm; # 默认的首页文件,多个用空格分开
    } # 第一个location区块结果
    error_page 500502503504 /50x.html; # 出现对应的http状态码时,使
    用50x.html回应客户
    location = /50x.html { # location区块开始,访问
    50x.html
    root html; # 指定对应的站点目录为html
    }
    }
    ......
    location的语法能说出来吗?
    注意:~ 代表自己输入的英文字母
    Location正则案例
    示例:
    #优先级1,精确匹配,根路径
    location =/ {
    return 400;
    }
    #优先级2,以某个字符串开头,以av开头的,优先匹配这里,区分大小写
    location ^~ /av {
    root /data/av/;
    }
    #优先级3,区分大小写的正则匹配,匹配/media*****路径
    location ~ /media {
    alias /data/static/;
    }
    #优先级4 ,不区分大小写的正则匹配,所有的****.jpg|gif|png 都走这里
    location ~* .*\.(jpg|gif|png|js|css)$ {
    root /data/av/;
    }
    #优先7,通用匹配
    location / {32、限流怎么做的?
    Nginx限流就是限制用户请求速度,防止服务器受不了
    限流有3种
    正常限制访问频率(正常流量)
    突发限制访问频率(突发流量)
    限制并发连接数
    Nginx的限流都是基于漏桶流算法,底下会说道什么是桶铜流
    实现三种限流算法
    1、正常限制访问频率(正常流量):
    限制一个用户发送的请求,我Nginx多久接收一个请求。
    Nginx中使用ngx_http_limit_req_module模块来限制的访问频率,限制的原理实质是基于漏桶算法原理
    来实现的。在nginx.conf配置文件中可以使用limit_req_zone命令及limit_req命令限制单个IP的请求处理
    频率。
    1r/s代表1秒一个请求,1r/m一分钟接收一个请求, 如果Nginx这时还有别人的请求没有处理完,Nginx
    就会拒绝处理该用户请求。
    2、突发限制访问频率(突发流量):
    限制一个用户发送的请求,我Nginx多久接收一个。
    上面的配置一定程度可以限制访问频率,但是也存在着一个问题:如果突发流量超出请求被拒绝处理,
    无法处理活动时候的突发流量,这时候应该如何进一步处理呢?
    Nginx提供burst参数结合nodelay参数可以解决流量突发的问题,可以设置能处理的超过设置的请求数
    外能额外处理的请求数。我们可以将之前的例子添加burst参数以及nodelay参数:
    return 403;
    }
     
     
     
    Nginx配置高可用性怎么配置?
    当上游服务器(真实访问服务器),一旦出现故障或者是没有及时相应的话,应该直接轮训到下一台服务
    器,保证服务器的高可用
    Nginx配置代码:
     
    server {38、Nginx怎么判断别IP不可访问?
    39、怎么限制浏览器访问?
    40、Rewrite全局变量是什么?
    listen 80;
    server_name www.lijie.com;
    location / {
    ### 指定上游服务器负载均衡服务器
    proxy_pass http://backServer;
    ###nginx与上游服务器(真实访问的服务器)超时时间 后端服务器连接的超时时间_发起握手
    等候响应超时时间
    proxy_connect_timeout 1s;
    ###nginx发送给上游服务器(真实访问的服务器)超时时间
    proxy_send_timeout 1s;
    ### nginx接受上游服务器(真实访问的服务器)超时时间
    proxy_read_timeout 1s;
    index index.html index.htm;
    }
    }
     
     
    Nginx怎么判断别IP不可访问?
     
    # 如果访问的ip地址为192.168.9.115,则返回403
    if ($remote_addr = 192.168.9.115) {
    return 403;
    }
     
    怎么限制浏览器访问?
     
    ## 不允许谷歌浏览器访问 如果是谷歌浏览器返回500
    if ($http_user_agent ~ Chrome) {
    return 500;
    }
     
     
    作者:tigergao
    功不唐捐 玉汝于成
  • 相关阅读:
    回溯算法
    cannot import name 'np' in mxnet
    Linux后台运行任务 nohup &
    为Windows Terminal添加右键菜单
    Outlook设置QQ邮箱
    逻辑回归 logistic regression
    Python添加自定义目录到sys.path
    强化学习 策略梯度
    为Windows terminal preview添加右键菜单
    双系统使用Linux引导
  • 原文地址:https://www.cnblogs.com/tigergaonotes/p/15680273.html
Copyright © 2020-2023  润新知