We are planning to set up Akamai as the CDN to replace the default Fastly configuration and have added the following headers accordingly.
<LocationMatch "^/.*\.html$">
Header set Surrogate-Control "max-age=0, no-store, no-cache"
</LocationMatch>
But it is still caching the content in fastly and I can see "x-cache" header is set. Also I noted that "Surrogate-Control" header is not present. Is it omitted by Fastly ? Am I doing correct config? Please let us know if you have replaced fastly with any other cdn.
Solved! Go to Solution.
Views
Replies
Total Likes
Hi @Mario248,
I can also confirm this, as we have the same setup with Akamai. I suggest setting the following options to prevent caching by Fastly:
Header set Surrogate-Control "private, max-age=0, stale-if-error=0, stale-while-revalidate=0"
In the responses, you should see always a MISS for x-cache, as this header is set by Fastly and not Dispatcher. Also, you won't see the Surrogate-Control header passed down.
Hope this helps,
Daniel
x-cache MISS suggests that request was not cached at the CDN level. So, although the header is present your response was not served from CDN cache. If you are looking to completely bypass Fastly CDN, I don't think it will be possible since it is part of AEMaaCS architecture itself.
Hope this helps
x-cache value is "MISS" which means it is bypassed fastly layer. Is this header nothing to do with dispatcher cache ? Is my understanding correct ? Is this mentioned anywhere in aem doc?
Views
Replies
Total Likes
Yes, as far as my understanding goes, this header is specific to Fastly CDN cache only and is not directly related to dispatcher cache.
https://www.fastly.com/documentation/reference/http/http-headers/X-Cache/
Views
Replies
Total Likes
Hi @Mario248,
I can also confirm this, as we have the same setup with Akamai. I suggest setting the following options to prevent caching by Fastly:
Header set Surrogate-Control "private, max-age=0, stale-if-error=0, stale-while-revalidate=0"
In the responses, you should see always a MISS for x-cache, as this header is set by Fastly and not Dispatcher. Also, you won't see the Surrogate-Control header passed down.
Hope this helps,
Daniel
Views
Likes
Replies