Обновил модели: добавил Компании и Габариты
All checks were successful
Deploy MES Core / deploy (push) Successful in 9s

This commit is contained in:
2026-03-28 11:49:01 +03:00
parent fba195db9c
commit f759c2c17e
6 changed files with 337 additions and 38 deletions

View File

@@ -1,39 +1,54 @@
# Описываем группу серверов, куда Nginx будет перекидывать запросы.
# 'web' — это имя сервиса из нашего docker-compose.yml.
upstream django_app {
server web:8000;
}
server {
# Слушаем стандартный 80-й порт (HTTP).
listen 80;
# Добавляем конкретный домен и IP сервера
# Список имен, на которые будет откликаться сервер.
# Если зайти по другому IP, Nginx может выдать ошибку.
server_name shiftflow.tertelius.space 192.168.1.108 localhost;
# Максимальный размер загружаемого файла
# Увеличиваем лимит загрузки (по умолчанию в Nginx всего 1МБ).
# 100М — чтобы ты мог спокойно грузить тяжелые чертежи или фото станков.
client_max_body_size 100M;
# Сжатие (Gzip) — ускорит загрузку интерфейса
# Включаем Gzip-сжатие. Nginx будет сжимать текстовые файлы перед отправкой,
# что ускорит загрузку интерфейса, особенно на слабом интернете.
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml;
# Главный блок: всё, что не статика, летит в Django.
location / {
proxy_pass http://django_app;
# Передаем оригинальный хост (важно для ALLOWED_HOSTS)
# Передаем оригинальный домен/IP (нужно для ALLOWED_HOSTS в Django).
proxy_set_header Host $host;
# Передаем реальный IP пользователя (чтобы в логах видеть, кто зашел).
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# КРИТИЧНО для CSRF защиты в Django
# Передаем протокол (http или https).
# КРИТИЧНО для CSRF защиты, чтобы Django не ругался при входе в админку.
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect off;
}
# Раздача статики (CSS, JS, картинки интерфейса).
# Nginx сам лезет в папку, не беспокоя Django — это очень быстро.
location /static/ {
# Путь ВНУТРИ контейнера Nginx (куда мы примонтировали волюм).
alias /app/staticfiles/;
# Заставляем браузер кэшировать стили на 30 дней, чтобы не качать их каждый раз.
expires 30d;
add_header Cache-Control "public, no-transform";
}
# Раздача медиа-файлов (чертежи, фото продукции).
location /media/ {
alias /app/media/;
expires 30d;