[آموزش Nginx] محدود کردن سرعت دانلود کاربران

  • شروع کننده موضوع شروع کننده موضوع Solina
  • تاریخ شروع تاریخ شروع

Solina

کاربر انجمن پارسه دو
کاربر انجمن پارسه
[آموزش Nginx] محدود کردن سرعت دانلود کاربران
سلام
5.gif


خیلی از دوستان به دنبال روشی هستند که در nginx اقدام به محدود کردن سرعت دانلود کاربران کنند یا حتی تعداد کانکشن ها از یک آی پی را محدود کنند و از حمله DoS / DDoS تا حدی جلوگیری کنند.

با ماژول ngx_http_limit_req می توان محدودیت هایی روی اتصالات (Connections) و درخواست ها (Requests) کاربران اعمال کرد.


سناریو اول: محدود سازی سرعت کاربران به ۱ مگابایت بر ثانیه
قبل از شروع بلاک Server یعنی بلاک Http مقدار زیر را تعریف کنید.

کد:

limit_req_zone $binary_remote_addr zone=JZ:10m ;
در VirtualHost (بلاک Server یا Location) بصورت زیر عمل کنید:

کد:

limit_rate 1024k;

سناریو دوم: محدود سازی سرعت کاربران به ۱ مگابایت بر ثانیه پس دانلود ۱۰۰ مگابایت فایل و محدود سازی تعداد کانکشن به ۴ عدد

قبل از شروع بلاک Server یعنی بلاک Http مقدار زیر را تعریف کنید.

کد:

limit_req_zone $binary_remote_addr zone=JZ:10m ;
در VirtualHost (بلاک Server یا Location) بصورت زیر عمل کنید:
کد:

limit_rate_after 100m;
limit_conn JZ 4;
limit_rate 256k;


توصیه: حتما پیشنهاد می کنم با Directive های اصلی Nginx آشنا شوید. با Block ها مثل Server و Location و HTTP همینطور.​
 
آخرین ویرایش توسط مدیر:

موضوعات مشابه

عقب
بالا