From 5f4769d10fbf10d44a69dc424ecf469e865af5eb Mon Sep 17 00:00:00 2001 From: erjemin Date: Wed, 1 Apr 2026 14:33:33 +0300 Subject: [PATCH] =?UTF-8?q?mad:=20=D1=80=D0=B0=D0=B1=D0=BE=D1=87=D0=B8?= =?UTF-8?q?=D0=B9=20=D0=BA=D0=BE=D0=BD=D1=84=D0=B8=D0=B3=20nginx=20(=D0=BF?= =?UTF-8?q?=D1=80=D0=BE=D0=BA=D1=81=D0=B8)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/nginx/pet-clones--external-nginx.conf | 22 +++----------------- 1 file changed, 3 insertions(+), 19 deletions(-) diff --git a/config/nginx/pet-clones--external-nginx.conf b/config/nginx/pet-clones--external-nginx.conf index 8845cce..8936950 100644 --- a/config/nginx/pet-clones--external-nginx.conf +++ b/config/nginx/pet-clones--external-nginx.conf @@ -1,4 +1,3 @@ -# ТЕСТОВОЕ ЗАДАНИЕ РОСМОРПОРТ # == Конфикурационный файл config/nginx/pet-clones--external-nginx.conf == # Внешний nginx конфиг для проксирования к контейнеру petclones-site--backend @@ -27,11 +26,6 @@ server { access_log /var/log/nginx/petclones.access.log; error_log /var/log/nginx/petclones.error.log warn; - # Rate-limiting для защиты от DDoS и автоматизированных запросов - # Разрешаем максимум 100 запросов в секунду с одного IP адреса - limit_req_zone $binary_remote_addr zone=petclones_limit:10m rate=100r/s; - limit_req zone=petclones_limit burst=200 nodelay; - # ОСНОВНОЙ БЛОК ПРОКСИРОВАНИЯ # Все запросы, кроме перехвачённых специфичными location'ами, проксируются сюда location / { @@ -88,13 +82,7 @@ server { # --- КЭШИРОВАНИЕ В БРАУЗЕРЕ КЛИЕНТА --- # Если файлы имеют хеш в названии (например: app.abc123.js), то cache-control может быть очень долгой # "immutable" говорит браузеру что файл никогда не изменится (если изменится, то будет другой хеш) - add_header Cache-Control "public, max-age=604800, immutable"; # 7 дней в секундах (604800 = 7*24*60*60) - - # ЛОГИРОВАНИЕ ВКЛЮЧЕНО для CrowdSec анализа подозрительных запросов к статике - # CrowdSec может обнаруживать попытки доступа к несуществующим файлам (признак сканирования) - # Отключаем логирование только найденных файлов (404 всё равно логируются в error_log) - access_log /var/log/nginx/petclones.access.log main buffer=32k flush=5s; - log_not_found off; # Не логируем 404 статики (слишком много шума) + add_header Cache-Control "public, max-age=2592000"; # 30 дней в секундах (30*24*60*60) } # КЭШИРОВАНИЕ МЕДИА ФАЙЛОВ @@ -103,11 +91,7 @@ server { proxy_pass http://petclones-backend; proxy_set_header Host $host; # Кэшируем на 30 дней (можно менять в зависимости от политики) - add_header Cache-Control "public, max-age=2592000"; # 30 дней в секундах (30*24*60*60) - - # ЛОГИРОВАНИЕ ВКЛЮЧЕНО для CrowdSec анализа - # Подозрительные скачивания медиа файлов (боты, жесткие сканеры и т.п.) должны логироваться - access_log /var/log/nginx/petclones.access.log main buffer=32k flush=5s; + add_header Cache-Control "public, max-age=604800, immutable"; # 7 дней в секундах (604800 = 7*24*60*60) } } @@ -135,4 +119,4 @@ server { # ТАКЖЕ НЕ ЗАБУДЬ: # 1. Установи certbot: sudo apt-get install certbot python3-certbot-nginx # 2. Получи сертификат: sudo certbot certonly --standalone -d pet-clones.cube2.ru -# 3. Перезагрузи nginx: sudo systemctl restart nginx +# 3. Перезагрузи nginx: sudo systemctl restart nginx \ No newline at end of file