Files
linearvoid/infrastructure/cloudflare/cache-rules.md
T

1.2 KiB

Cloudflare Cache Rules for Linear Void (per ADR-001)

  1. .m4s and .ts segments (immutable)

    • Expression: (http.host eq "media.linearvoid.tv" and (http.request.uri.path contains ".ts" or http.request.uri.path contains ".m4s"))
    • Cache status: Eligible for cache
    • Edge Cache TTL: 1 month (or Cache-Control: public, max-age=31536000, immutable from origin)
    • Cache Everything: Yes
  2. .m3u8 manifests (live)

    • Expression: (http.host eq "media.linearvoid.tv" and http.request.uri.path contains ".m3u8")
    • Cache status: Eligible for cache
    • Edge Cache TTL: 2 seconds
    • Cache-Control: public, max-age=2, must-revalidate
  3. Static assets

    • Expression: (http.host eq "linearvoid.tv" and http.request.uri.path contains ".js" or http.request.uri.path contains ".css")
    • Edge Cache TTL: 1 year (with hash in filename for immutable caching)

Tiered Cache: Enable Smart Tiered Cache for R2 custom domain to reduce origin requests.

WAF: Enable basic rate limiting and bot management for /ws and admin routes.

These rules ensure high cache hit ratio for .m4s and .ts segments while keeping live manifests fresh. Monitor cache hit ratio in Cloudflare analytics.