Caching
Caching in CDN refers to storing copies of web content at multiple edge servers across various geographical locations. It allows users to access content from a server that is geographically closer to them, improving the speed and efficiency of content delivery.
Features
Static Content Caching: Static content like HTML, CSS, JavaScript files, images, and videos are cached in the CDN edge servers. Caching is based on the request method
GET
orHEAD
and theHTTP
response code defined in the cache policy. There will be no differences between static content and dynamic content. Content that should not be cached must have defined cache control headers.Dynamic Content Caching: With
cache-control
headers, you can customize the cache behavior to your needs and on enabling Caching on a CDN route, everything that matches the cache policy will be cached including the dynamic content.Cache Policy: The default cache policy for IONOS CDN is as follows:
The edge servers cache all content with status code
HTTP 2xx
from the origin server for 24 hours if no cache control headers are given. Cache-control headers take precedence otherwise.Content with
HTTP
301
,302
, or404
will be cached for 10 minutes if nocache-control
headers are set.Stale content will be provided if the origin is unreachable and the cache still exists.
Automatic Purging: The CDN can automatically remove cached content based on a defined policy, ensuring that users always receive the most up-to-date version of the content when necessary.
Cache response headers
With IONOS CDN, you can set cache response headers to X-CDN-Cache-Status
indicating whether a resource is cached or not. The supported values are as follows:
HIT: The resource was delivered from the CDN cache.
MISS: The resource was not found in the cache; it was served from the origin web server and cached. Further requests may be cached if the cache policy matches.
STALE: The resource was served from the cache but could have expired. Stale content will be delivered if the CDN is updating the content. A timeout or error from the origin server is provided.
BYPASS: All responses where the cache is disabled due to the policy or configuration.
You can also ensure not to cache specific requests if the following requirements are met:
An
X-Accel-Expires
response header field was sent with a value of0
.An “Expires” response header was sent with a date that is already expired.
The “Cache-Control” header has values like
no-cache
,no-store
orprivate
in the response.The response header includes the
Set-Cookie
field.If the response header includes the
Vary
field with the special value*
.
Benefits
Reduced Latency: CDNs serve content from the nearest edge server, minimizing the distance data has to travel, reducing latency, and improving load times.
Enhanced Availability: Cached content can still be served to the users even if the origin server experiences downtime, improving the availability of web services.
Content Relevance: With well-defined caching policies, you can ensure users receive up-to-date content even while serving content from the cached server instead of the origin server.
Scalability: Caching allows websites to handle higher data traffic without degradation in the content served to the user requests, making it easier to scale during traffic spikes.
Improved Security: By reducing the number of direct content requests to the origin server, caching helps mitigate certain vulnerabilities and provides an additional security layer.
Last updated