Files
mechanic-pwa/ops/Caddyfile.fragment
T

40 lines
1.1 KiB
Caddyfile

# Caddy fragment for Premium Mechanic PWA on mechanic.pptaxi.ru.
# Apply on VDS 100.64.0.12 by copying/including into /etc/caddy/Caddyfile
# (or /etc/caddy/sites-enabled/ if the main Caddyfile uses imports).
#
# Assumes:
# - TaxiDashboard backend listens on 127.0.0.1:8000
# - Frontend PWA build is rsynced to /opt/sites/mechanic-pwa/dist/
mechanic.pptaxi.ru {
encode gzip zstd
# PWA: pass /api/* to the backend so the frontend can use relative URLs.
handle /api/* {
reverse_proxy 127.0.0.1:8000
}
# PWA static files with SPA fallback to index.html.
handle {
root * /opt/sites/mechanic-pwa/dist
try_files {path} /index.html
file_server
}
log {
output file /var/log/caddy/mechanic.pptaxi.ru.log {
roll_size 50mb
roll_keep 5
}
}
header {
# Basic security headers for a PWA
Referrer-Policy strict-origin-when-cross-origin
X-Content-Type-Options nosniff
X-Frame-Options DENY
# Camera permission for our origin only
Permissions-Policy "camera=(self), microphone=(self), geolocation=()"
}
}