Home  >  Article  >  Operation and Maintenance  >  nginx current limiting and configuration management methods

nginx current limiting and configuration management methods

王林
王林forward
2023-05-12 14:52:061218browse

    nginx current limit

    http {
      limit_conn_zone $binary_remote_addr zone=addr:10m;
      //$binary_remote_addr 表示通过remote_addr这个标识来做限制
      //zone=addr:10m 表示生成一个大小为10M,名字为addr的内存区域
      ...
      server {
        location /download/ {
        limit_conn addr 1; #限制并发数
        limit_rate 50k; #限制带宽
     }
    }

    nginx current limiting and configuration management methods

    Limit the number of concurrent connections

    nginx current limiting and configuration management methods

    $binary_remote_addr: Indicates restriction through the remote_addr flag. The purpose of "binary_" is to abbreviate the memory usage and limit the same client IP address.
    zone=addr:10m: Indicates generating a file with a size of 10M, a memory area named addr, used to store access frequency information

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    #http status code

    400-499 is used to indicate Client error.

     500-599 is used to support server errors.

    nginx current limiting and configuration management methods

    Limit the access frequency of the same client

    nginx current limiting and configuration management methods

    rate=1r/s: indicates that the same ID is allowed The client's access frequency is limited to 1 time per second, that is, only one request is processed per second. It can also be 30r/m, which is limited to one access every 2 seconds, that is, only one request is processed every 2 seconds.

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods##burst

    nginx current limiting and configuration management methods

    burst=5: The meaning of burst burst. This configuration means setting a buffer with a size of 5.
    When a large number of requests (burst) come, requests that exceed the access frequency limit can be processed first Put it in this buffer and wait, but there are only 5 positions in this waiting area. Requests that exceed the limit will directly report a 503 error and return.


    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    #nodelaynginx current limiting and configuration management methods

    If set, it will provide the ability to process (burst rate) requests instantly. When the request exceeds (burst rate), it will directly return 503, and there will never be a situation where the request needs to wait. (The unit of rate here is: r/s).

    If not set, all requests will be queued in sequence.


    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    limit_rate limit bandwidthnginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods##

    nginx configuration management

    Automatic index

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    ##expire cache configuration

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    ##location expression type

    ~ means to perform a regular match, which is case-sensitive
    ~* means to perform a regular match, which is not case-sensitive

    ^~ means to match ordinary characters. Prefix matching is preferred. If the match is successful, no other locations will be matched.
    = performs exact matching of common characters. That is an exact match.
    @ "@" defines a named location, used when internally directed, such as error_page, try_files
    /: universal matching, if there is no other match, any request will be matched;

    location expression priority

    location = > location full path> location ^~ path> location ~ ,~* regular sequence> location partial starting path (prefix matching ) > /

    Log polling

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    ##For security reasons, the log directory does not need to give you nginx user access rights. Set # chmod -R 700 /usr/local/nginx/logsnginx current limiting and configuration management methods

    prohibit no Necessary directory log

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    #Restrictions on site directories and files

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    nginx current limiting and configuration management methods

    Chinese garbled characters

    nginx current limiting and configuration management methodsSet charset utf-8;

    The above is the detailed content of nginx current limiting and configuration management methods. For more information, please follow other related articles on the PHP Chinese website!

    Statement:
    This article is reproduced at:yisu.com. If there is any infringement, please contact admin@php.cn delete