Caddy was compressing all responses including binary file downloads (PDFs, images, videos), which severely throttled download speed to ~130KB/s despite 30MB/s VPS bandwidth. Now only compresses text-based types (HTML, CSS, JS, JSON, XML, SVG) where compression actually helps.
41 lines
838 B
Caddyfile
41 lines
838 B
Caddyfile
{
|
|
servers {
|
|
timeouts {
|
|
read_header 10s
|
|
idle 60s
|
|
}
|
|
max_header_size 16KB
|
|
}
|
|
}
|
|
|
|
nextcloud.t-gstone.de {
|
|
encode zstd gzip {
|
|
match {
|
|
header Content-Type text/*
|
|
header Content-Type application/javascript*
|
|
header Content-Type application/json*
|
|
header Content-Type application/xml*
|
|
header Content-Type application/rss*
|
|
header Content-Type application/atom*
|
|
header Content-Type image/svg*
|
|
}
|
|
}
|
|
|
|
reverse_proxy nextcloud-nginx:80
|
|
|
|
header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
|
|
header Referrer-Policy "no-referrer"
|
|
header X-Content-Type-Options "nosniff"
|
|
header X-Frame-Options "SAMEORIGIN"
|
|
header X-Permitted-Cross-Domain-Policies "none"
|
|
header X-Robots-Tag "noindex, nofollow"
|
|
|
|
request_body {
|
|
max_size 10G
|
|
}
|
|
}
|
|
|
|
git.t-gstone.de {
|
|
reverse_proxy gitea:3000
|
|
}
|