Keep getting Cache-Status BYPASS despite page rule

I want CloudFlare to cache urls starting with in the same “standard” way it caches images and static files. That is, I want all these urls:


to be cached as different urls. So if I request (1) and then (2), the second will be a miss, but if I then request (2) again, it will be a hit, etc.

The response is actually generated by PHP, it contains cookies, and the Content-Type header is application/manifest+json.

So I’ve done everything according to

  1. I have added a Page Rule for:

(I want it to work with,,
(yes I’m fine with everything starting with site.webmanifest being cached too, e.g. site.webmanifest.123.json)

  1. The Page Rule has these settings:
    Cache Level: Cache Everything
    Edge TTL: 1 month

According to documentation: " When combined with an Edge Cache TTL > 0 , Cache Everything removes cookies from the origin web server response".

  1. I have made sure that I’m not returning any Cache-Control headers from my server. I know those would cause a cache bypass.

So, according to documentation my response should be cached.

Yet it is not cached and I get the header CF-Cache-Status: BYPASS.

I see no reason why caching should be bypassed.

What am I missing, or rather, what is missing in the documentation?

I tried changing the url for the pageRule to (with no *'s before or after) and testing with just the plain url with no query string. The result is the same.

It sounds like you’ve been very thorough. At this point, I believe only Support will have the necessary access to see why cache is Bypassed.

To contact Cloudflare Customer Support, login & go to and select get more help. If you receive an automatic response that does not help you, please reply and indicate you need more help.

This topic was automatically closed 5 days after the last reply. New replies are no longer allowed.