CDN on Zerops
Keywords
cdn, cache, edge, content delivery, static assets, object storage cdn, geo-steering, purge, cache invalidation
TL;DR
Zerops CDN has 6 global regions with a fixed 30-day cache TTL (HTTP Cache-Control headers are ignored by CDN but still affect browsers). Built on Nginx + Cloudflare geo-steering.
Regions
- EU (Prague, CZ) — Primary + all-region failover
- EU (Falkenstein, DE) — Secondary European
- UK (London)
- AU (Sydney)
- SG (Singapore)
- CA (Beauharnois, Canada)
DNS TTL: 30 seconds. Geo-steering routes to nearest node. EU Prague is fallback if all others down.
CDN Modes
Object Storage CDN
- URL:
https://storage.cdn.zerops.app/bucket/path - Env var:
${storageCdnUrl} - Direct from Object Storage through CDN
Static CDN
- URL:
https://static.cdn.zerops.app/domain.com/path - Env var:
${staticCdnUrl} - For custom domains on static/nginx services
- Wildcard domains NOT supported
API CDN
- Coming soon
- Env var:
${apiCdnUrl}
Cache Behavior
- TTL: Fixed 30 days (not configurable)
- HTTP
Cache-Controlheaders: Affect browser caching, NOT CDN caching - Eviction: LRU when storage capacity reached
- First request: Fetched from origin and cached
Purge Patterns
Wildcard must be at end. Use $ suffix for exact file match.
Purge via zsc
Gotchas
- 30-day fixed TTL: Cannot be changed —
Cache-Control: max-age=3600has no effect on CDN - No wildcard domains on static CDN:
*.domain.comis not supported - Purge wildcards at end only:
/images/*.jpgis invalid — use/images/*
See Also
- zerops://themes/services — Object Storage service card
- zerops://guides/public-access