Configuring for CDN caching
CloudFront is the CDN of choice for Skpr, and it will respect the configuration of your application. By not configuring your application correctly, the CDN will inherit the configuration and will not cache the requests made. This will result in lost performance, higher vulnerability to distributed denial of service attacks, and it will come with a cost factor.
As a product owner, it is in your best interest to make sure the minimal configuration is done to allow the CDN to cache
requests made to the application. All that is necessary is to ensure the header named
Max-Age has a sensible value,
and we recommend this be set to 21600 or higher.
/admin/config/development/performance, set your maximum cache age and submit the form.
And don't forget to export your configuration and commit it, so that you know the change can't be reverted unexpectedly.
You can use drush to set the required variables for Drupal 7 to configure caching. We however would recommend setting
these values to hard-coded values in
$conf['cache'] = 1; $conf['page_cache_maximum_age'] = 21600;
These methods will ensure that Drupal will set the
Max-Age header on all of its responses, and it will provide you
with a way to test that your CDN is responding with a cached copy of the content. By looking for the
header, you can identify if CloudFront is serving a cached copy of your content. The first time should be a
running it once more you should receive a
$ curl https://prod.mysite.skpr.live | grep "x-cache" x-cache: Hit from cloudfront