Добавьте ограничение соединения по пути API, используя Nginx - PullRequest
0 голосов
/ 09 апреля 2020

Мой сервер недавно получил DDOS-атаку на мой API-сервер. Я хочу установить ограничение на соединение с моим путем API. Путь API: <server path>/api/index.php

Я хочу знать, как я могу ограничить кого-либо доступ к нему только дважды в секунду.

В настоящее время я использую следующие настройки.

server {
    server_name example.com; # managed by Certbot

        root /var/www/;
        index index.php index.html index.htm;

    location / {
                root /var/www/;
                index index.php;
                try_files $uri $uri/ /index.php?$args;
        }

location /example.com/{
                limit_req zone=mylimit;
                root /var/www/example.com/;
                index index.php?$args;
                try_files $uri $uri/ /example.com/index.php?$args;
        }
        location ~ ^/api(/|/index\.php)$ {
                limit_req zone=mylimit burst=2 nodelay;
                root /var/www/;
        }
}

Я хочу, чтобы Nginx не разрешил все другие файлы в каталоге api/, кроме файла index.php, и разрешил ему следовать вышеуказанным настройкам limit_req.

Кто-нибудь может помочь?

...