Перейти к содержимому

Настройки Web

На этой странице описан блок web: виртуальные хосты, обработка путей (/:, /api, /static), reverse-proxy/балансировка, отдача статики и health-check для upstream.


web — это конфигурация HTTP(S) обслуживания: виртуальный хост (домен + TLS/ALPN) и правила маршрутизации по путям.

Virtual Host (domain)

Домен хоста, версия HTTP (ALPN) и сертификаты (certs).

Пути (routing)

Правила для префиксов: /: [...], /api: [...], /static: [...].

Upstream + health-check

Reverse-proxy/балансировка и контроль доступности backend’ов.

localhost: [
http_version: "http3"
certs: certs
/: [
balance: [
["https://backend1.example.com" 1]
["https://backend2.example.com" 1]
]
check: [
check_type: "http"
target: "/health"
interval: 5
max_fails: 3
]
]
]

  • domain — домен виртуального хоста (в примере — localhost)
  • certs — переменная сертификатов из config.mgc (например, certs)
  • http_version — версии HTTP, которые хост объявляет через ALPN

HTTP/1.1 (ALPN: http/1.1)

Если клиенты/балансировщики не поддерживают HTTP/3, начните с http2. http3 включайте после проверки совместимости.


Путь задаётся как ключ (префикс), например /: [...], /api: [...], /static: [...].
Внутри — правило обработки: reverse-proxy, балансировка или отдача файлов.

/: [
reverse_proxy: "https://backend1.example.com"
]
/: [
balance: [
["https://backend1.example.com" 1]
["https://backend2.example.com" 1]
]
]
/: [
serve_in: "/etc/meshgate/default/"
]

Health-check позволяет автоматически исключать упавшие upstream’ы.

check: [
check_type: "http"
target: "/health"
interval: 5
max_fails: 3
]
ПолеТипОписаниеПример
check_typestringПротокол проверки: http или tcp”http”
targetstringHTTP endpoint для проверки (для tcp обычно не указывается)“/health”
intervalnumberИнтервал проверок (секунды)5
max_failsnumberОшибок подряд до статуса fail3