You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
743 B
Caddyfile
29 lines
743 B
Caddyfile
# deploy/Caddyfile — 리버스 프록시 + 자동 HTTPS + 보안 헤더 (phase-15)
|
|
# 도메인을 실제 값으로 교체. 로컬 테스트는 `ari.localhost` 사용 가능.
|
|
{$ARI_DOMAIN:ari.localhost} {
|
|
encode zstd gzip
|
|
|
|
# 보안 헤더
|
|
header {
|
|
Strict-Transport-Security "max-age=31536000; includeSubDomains"
|
|
X-Frame-Options "DENY"
|
|
X-Content-Type-Options "nosniff"
|
|
Referrer-Policy "strict-origin-when-cross-origin"
|
|
-Server
|
|
}
|
|
|
|
# /metrics 는 외부 차단(내부망/관리자만) — 404 로 숨김
|
|
@metrics path /api/metrics
|
|
respond @metrics 404
|
|
|
|
# API → backend(gunicorn:8000)
|
|
handle /api/* {
|
|
reverse_proxy backend:8000
|
|
}
|
|
|
|
# 그 외 → frontend(Next standalone:3000)
|
|
handle {
|
|
reverse_proxy frontend:3000
|
|
}
|
|
}
|