42 lines
1.7 KiB
Caddyfile
42 lines
1.7 KiB
Caddyfile
# Caddy на VPS (186.246.51.17) — единственная публичная точка входа.
|
||
# Два домена, ОБА с твоими сертификатами; проксируют в SSH-туннели:
|
||
#
|
||
# forbiddenstars.ru → 127.0.0.1:9000 ← Pi (autossh, постоянно) PROD
|
||
# forbidden-stars.ru → 127.0.0.1:9001 ← ПК (по требованию) DEV/TEST
|
||
#
|
||
# Caddy сам терминирует TLS (он и есть edge: видит реального клиента), а вниз к
|
||
# приложению добавляет X-Forwarded-Proto=https / X-Forwarded-For / Host —
|
||
# приложение это учитывает (uvicorn --proxy-headers). Положи файл в /etc/caddy/Caddyfile.
|
||
# Сертификаты — см. deploy/vps/README.md (fullchain = leaf + промежуточные одним файлом).
|
||
#
|
||
# SSE (/api/events): отдельный handle БЕЗ encode и с flush_interval -1 — иначе сжатие/
|
||
# буферизация задержат поток событий (реал-тайм перестанет работать).
|
||
|
||
forbiddenstars.ru {
|
||
tls /etc/caddy/certs/forbiddenstars.ru/fullchain.pem /etc/caddy/certs/forbiddenstars.ru/privkey.pem
|
||
@sse path /api/events
|
||
handle @sse {
|
||
reverse_proxy 127.0.0.1:9000 {
|
||
flush_interval -1
|
||
}
|
||
}
|
||
handle {
|
||
encode zstd gzip
|
||
reverse_proxy 127.0.0.1:9000
|
||
}
|
||
}
|
||
|
||
forbidden-stars.ru {
|
||
tls /etc/caddy/certs/forbidden-stars.ru/fullchain.pem /etc/caddy/certs/forbidden-stars.ru/privkey.pem
|
||
@sse path /api/events
|
||
handle @sse {
|
||
reverse_proxy 127.0.0.1:9001 {
|
||
flush_interval -1
|
||
}
|
||
}
|
||
handle {
|
||
encode zstd gzip
|
||
reverse_proxy 127.0.0.1:9001
|
||
}
|
||
}
|