It looks like there is a bug in how the cloudflare edge caching works regarding the HTTP Vary header. When a server serves a cacheable resource with a
Vary: User-Agent header, cloudflare caches the resource when the first request comes, and then serves the same content again to all subsequent requests, independently of the User-Agent header of the request. This is very clearly violating the HTTP specification which states that :
An origin server might send Vary with a list of fields for two purposes: 1. To inform cache recipients that they MUST NOT use this response to satisfy a later request unless the later request has the same values for the listed fields as the original request (Section 4.1 of [RFC7234]). In other words, Vary expands the cache key required to match a new request to the stored cache entry.
Who should I contact to have this bug fixed ?