68 lines
1.4 KiB
Caddyfile
68 lines
1.4 KiB
Caddyfile
# Caddy configuration for VoxBlog
|
|
# Add this to your existing Caddyfile on VPS
|
|
|
|
# Option 1: Single domain with /api path (Recommended)
|
|
admin.pusula.blog {
|
|
# Frontend (React Admin)
|
|
handle {
|
|
reverse_proxy localhost:3300
|
|
}
|
|
|
|
# API Backend
|
|
handle /api* {
|
|
reverse_proxy localhost:3301
|
|
}
|
|
|
|
# Enable gzip compression
|
|
encode gzip
|
|
|
|
# Security headers
|
|
header {
|
|
X-Frame-Options "SAMEORIGIN"
|
|
X-Content-Type-Options "nosniff"
|
|
X-XSS-Protection "1; mode=block"
|
|
Referrer-Policy "strict-origin-when-cross-origin"
|
|
}
|
|
|
|
# Logging
|
|
log {
|
|
output file /var/log/caddy/voxblog-access.log
|
|
}
|
|
}
|
|
|
|
# Option 2: Separate subdomains (Alternative)
|
|
# Uncomment if you prefer separate subdomains
|
|
|
|
# Frontend subdomain
|
|
# voxblog.yourdomain.com {
|
|
# reverse_proxy localhost:3300
|
|
#
|
|
# encode gzip
|
|
#
|
|
# header {
|
|
# X-Frame-Options "SAMEORIGIN"
|
|
# X-Content-Type-Options "nosniff"
|
|
# X-XSS-Protection "1; mode=block"
|
|
# }
|
|
#
|
|
# log {
|
|
# output file /var/log/caddy/voxblog-access.log
|
|
# }
|
|
# }
|
|
|
|
# API subdomain
|
|
# api.voxblog.yourdomain.com {
|
|
# reverse_proxy localhost:3301
|
|
#
|
|
# encode gzip
|
|
#
|
|
# header {
|
|
# X-Frame-Options "SAMEORIGIN"
|
|
# X-Content-Type-Options "nosniff"
|
|
# }
|
|
#
|
|
# log {
|
|
# output file /var/log/caddy/voxblog-api-access.log
|
|
# }
|
|
# }
|