sharixopen:knowledge:operations:nginx_static
Различия
Показаны различия между двумя версиями страницы.
| sharixopen:knowledge:operations:nginx_static [2026/10/27 08:03] – [sharixknowledge] approved package sx_knowledge_api_open | sharixopen:knowledge:operations:nginx_static [2026/10/28 15:00] (текущий) – [sharixknowledge] approved package sx_knowledge_api_open | ||
|---|---|---|---|
| Строка 5: | Строка 5: | ||
| " | " | ||
| " | " | ||
| - | " | + | " |
| " | " | ||
| " | " | ||
| Строка 25: | Строка 25: | ||
| " | " | ||
| }, | }, | ||
| - | " | + | " |
| " | " | ||
| } | } | ||
| </ | </ | ||
| - | ====== Open: необязательный nginx, статика и внешний HTTPS ====== | + | ====== |
| ~~NOCACHE~~ | ~~NOCACHE~~ | ||
| - | **Раздел: | + | **Раздел: |
| ===== Без nginx ===== | ===== Без nginx ===== | ||
| Строка 42: | Строка 42: | ||
| ===== Включение nginx ===== | ===== Включение nginx ===== | ||
| - | В '' | + | В '' |
| - | подходит | + | рекомендуется '' |
| <code bash> | <code bash> | ||
| NGINX_ENABLED=1 | NGINX_ENABLED=1 | ||
| NGINX_USER=" | NGINX_USER=" | ||
| NGINX_GROUP=" | NGINX_GROUP=" | ||
| - | NGINX_SERVER_NAMES=" | + | NGINX_SERVER_NAMES=" |
| - | NGINX_UPSTREAM=" | + | NGINX_UPSTREAM=" |
| - | NGINX_SITE_CONFIG_PATH="/ | + | NGINX_SITE_CONFIG_PATH="/ |
| NGINX_SERVICE_NAME=" | NGINX_SERVICE_NAME=" | ||
| </ | </ | ||
| Строка 81: | Строка 81: | ||
| Если assets ещё не собраны — сначала пройти deploy из основного руководства, | Если assets ещё не собраны — сначала пройти deploy из основного руководства, | ||
| затем activate. При отказе пакета/ | затем activate. При отказе пакета/ | ||
| - | причину, | + | причину, |
| - | include и отсутствия конфликта | + | nginx должен быть persistently enabled и active: installer |
| + | enable при необходимости | ||
| + | который не входит в http include, активацию не завершает; | ||
| + | ошибке откатывается. Дополнительный ручной enable/ | ||
| + | Новый deploy login нужен для изменённого членства в группе. Затем под deploy: | ||
| <code bash> | <code bash> | ||
| - | nginx -t && | + | cd /opt/sharix-open-webapp-base |
| + | ./ | ||
| </ | </ | ||
| - | Имя сервиса заменить, если NGINX_SERVICE_NAME другое. Новый deploy login нужен | + | Этот restart проверит actual backend и локальный HTTP nginx. Он не создаёт |
| - | для изменённого членства в группе. Затем обычный | + | системный site config вместо root activate. В сообщении «run root bootstrap» |
| - | от deploy, если | + | слова описывают |
| + | выше. После | ||
| ===== Где конфигурация ===== | ===== Где конфигурация ===== | ||
| Строка 118: | Строка 124: | ||
| Подставить фактический домен и origin; пример для localhost: | Подставить фактический домен и origin; пример для localhost: | ||
| <code bash> | <code bash> | ||
| - | curl -I -H ' | + | curl -I -H ' |
| - | curl -I -H ' | + | curl -I -H ' |
| - | curl -I -H ' | + | curl -I -H ' |
| http:// | http:// | ||
| </ | </ | ||
| Строка 130: | Строка 136: | ||
| запуск приложения. | запуск приложения. | ||
| - | ===== Проверенная реализация и границы доказательств ===== | + | ===== Auto upstream и сохранение настроек ===== |
| - | Сверено 2026-10-27 по опубликованному Open root | + | Auto читает единственное корректное TCP значение BIND из корневой .env без |
| + | загрузки Django. Конкретный bind IP используется как connect address, wildcard | ||
| + | 0.0.0.0/:: переводится в соответствующий loopback; поддерживается IPv6 в скобках. | ||
| + | Unix socket, несколько bind или неоднозначный файл требуют явного поддержанного | ||
| + | origin. Сохранённый proxy_pass обязан совпадать с разрешённым upstream; при | ||
| + | расхождении файл сохраняется и активация останавливается для явного решения. | ||
| + | |||
| + | Примерные SERVER_NAMES/ | ||
| + | первом добавлении ключей. Уже заданные обычные и export assignments, | ||
| + | значения и последняя строка без newline | ||
| + | ключа выводится в CLI, значение не печатается. Исправление не угадывает старые | ||
| + | правильные значения | ||
| + | оставить по одному нужному активному назначению. Перезапись всей конфигурации | ||
| + | старой копией не является восстановлением трёх nginx-параметров. | ||
| + | |||
| + | ===== DEBUG=False и внешний 502 ===== | ||
| + | Изменение .env применяется после restart приложения. DEBUG=True не исправляет | ||
| + | неверный proxy_pass, недоступный порт или отсутствие локального nginx. | ||
| + | Если backend даёт 200, а внешний HTTPS даёт 502, проверить отдельно локальный | ||
| + | HTTP: | ||
| + | не слушаться; | ||
| + | Не заменять точную диагностику повторным полным installer. | ||
| + | |||
| + | ===== Актуальная source-проверка 2026-10-28 ===== | ||
| + | Порядок сверён с опубликованным ShariX Open root | ||
| + | [[https:// | ||
| + | [[https:// | ||
| + | [[https:// | ||
| + | [[https:// | ||
| + | [[https:// | ||
| + | и config '' | ||
| + | а не только help или сообщения коммитов. Обычные команды не меняют release tags. | ||
| + | Код реализован; | ||
| + | HTTP/XMPP и пользовательскому сценарию. Наличие source-check или status=review | ||
| + | не является приёмкой произвольной установки или внешнего HTTPS. | ||
| + | |||
| + | ===== Историческая source-проверка 2026-10-27 | ||
| + | Сверено 2026-10-27 по опубликованному | ||
| [[https:// | [[https:// | ||
| - | и Open config | + | и ShariX |
| [[https:// | [[https:// | ||
| Проверены исполняемые пути install.sh, install_roles.sh, | Проверены исполняемые пути install.sh, install_roles.sh, | ||
| deploy_control.sh, | deploy_control.sh, | ||
| - | Владелец подтвердил успешный запуск Open после исправлений. Установка nginx | + | Владелец подтвердил успешный запуск |
| с новым вопросом и повторная независимая проверка Testopen ещё требуют | с новым вопросом и повторная независимая проверка Testopen ещё требуют | ||
| отдельной host-приёмки. Это не объявление релиза и не подтверждение production. | отдельной host-приёмки. Это не объявление релиза и не подтверждение production. | ||
sharixopen/knowledge/operations/nginx_static.1793088196.txt.gz · Последнее изменение: — sx_knowledge_api_open