fix: restructure Caddyfile with proper directive ordering using matchers
Some checks failed
continuous-integration/drone/push Build was killed
Some checks failed
continuous-integration/drone/push Build was killed
This commit is contained in:
42
Caddyfile
42
Caddyfile
@@ -1,45 +1,33 @@
|
||||
|
||||
|
||||
# Основной блок для вашего домена
|
||||
{$APP_DOMAIN} {
|
||||
# Включаем сжатие для ускорение загрузки
|
||||
# Включаем сжатие для ускорения загрузки
|
||||
encode zstd gzip
|
||||
|
||||
# --- Заголовки безопасности ---
|
||||
header {
|
||||
X-Frame-Options "SAMEORIGIN"
|
||||
X-Content-Type-Options "nosniff"
|
||||
Strict-Transport-Security "max-age=31536000;"
|
||||
}
|
||||
|
||||
# --- Маршрутизация запросов ---
|
||||
|
||||
# 1. API бэкенда (Yggdrasil, Web, Admin)
|
||||
reverse_proxy /api/* backend:8080
|
||||
reverse_proxy /authserver/* backend:8080
|
||||
reverse_proxy /sessionserver/* backend:8080
|
||||
@api path /api/* /authserver/* /sessionserver/*
|
||||
reverse_proxy @api backend:8080
|
||||
|
||||
# 2. WebSocket для измерения пинга
|
||||
handle /ws/ping {
|
||||
reverse_proxy ping-helper:8081
|
||||
}
|
||||
@ws path /ws/ping
|
||||
reverse_proxy @ws ping-helper:8081
|
||||
|
||||
# 3. Раздача файлов (скины, модпаки)
|
||||
handle_path /files/* {
|
||||
# Указываем корень, где лежат папки textures и modpacks
|
||||
root * /srv
|
||||
# Включаем файловый сервер
|
||||
file_server
|
||||
}
|
||||
|
||||
# 4. Раздача статики фронтенда (Vue.js SPA)
|
||||
# Этот блок обрабатывает все остальные запросы
|
||||
# 4. Раздача статики фронтенда (Vue.js SPA)
|
||||
# Этот блок обрабатывает все остальные запросы (Nginx container)
|
||||
reverse_proxy * frontend:80
|
||||
|
||||
# --- Заголовки безопасности (рекомендация из ТЗ) ---
|
||||
header {
|
||||
# Запрещает встраивать сайт в iframe на других доменах
|
||||
X-Frame-Options "SAMEORIGIN"
|
||||
# Защита от MIME-сниффинга
|
||||
X-Content-Type-Options "nosniff"
|
||||
# Включает HSTS, заставляя браузеры использовать только HTTPS
|
||||
Strict-Transport-Security "max-age=31536000;"
|
||||
# Базовая политика безопасности контента
|
||||
# Content-Security-Policy "..."
|
||||
# 4. Фронтенд (Vue.js SPA) - все остальные запросы
|
||||
handle {
|
||||
reverse_proxy frontend:80
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user