15 lines
1.7 KiB
Markdown
15 lines
1.7 KiB
Markdown
# module-03. Проектная спецификация корневого `nginx`
|
||
|
||
> Статус: указатель. Канонический контракт и профильные спецификации VM разнесены.
|
||
> Этот файл сохраняет стабильный путь `module-03-nginx.md` для существующих ссылок.
|
||
|
||
Nginx разрезан так, чтобы репозитории ВМ1 и ВМ2 не тащили чужой routing, а TLS, request id, ACME и запрет `/internal/` не разъезжались.
|
||
|
||
| Документ | Роль |
|
||
|---|---|
|
||
| [`../architectory/arch-08-nginx.md`](../architectory/arch-08-nginx.md) | Архитектурный контракт: независимый nginx на каждой VM, TLS/ACME, request id, forwarded headers, internal 404, JSON access log, Compose hardening. Не кастомизировать в репозитории VM так, чтобы сломать контракт. Compose-сети и published ports остаются в [`../architectory/arch-03-docker-compose-blueprint.md`](../architectory/arch-03-docker-compose-blueprint.md). |
|
||
| [`module-03-nginx-vm1.md`](module-03-nginx-vm1.md) | Реализация на ВМ1: SPA, `/api/`, `/auth/`, WS, Bitrix local app, SMS callback, CSP/CORS, public cache. |
|
||
| [`module-03-nginx-vm2.md`](module-03-nginx-vm2.md) | Реализация на ВМ2: exact CRM webhook, source IP allow-list, private `8443` Message Safety. |
|
||
|
||
Агент ВМ1 читает arch-08 + спецификацию ВМ1. Агент ВМ2 читает arch-08 + спецификацию ВМ2. Публичный трафик одной машины не проксируется через другую.
|