How to integrate a CDN with W3 Total Cache

The integration of a Content Delivery Network (CDN) into your website remains one of the easiest and most cost-effective ways to improve web performance. W3 Total Cache supports several CDN types (self-hosted, origin pull, and origin push) and makes the integration into WordPress simple.

In this post, I’ll show you how to integrate MaxCDN’s origin pull CDN product into W3TC. MaxCDN’s product remains one of the most commonly used CDNs in W3TC because it’s both affordable, simple to set up, and requires virtually no maintenance once integrated.

MaxCDN configuration steps

First, create MaxCDN account if you haven’t already. When you log in, click “Manage Zones” Then click “Create Pull Zone” Configure your new Pull Zone and then click “Create” Make a note of your CDN URL, which we’ll use in a moment

We could technically integrate our CDN now, but W3TC can communicate with the MaxCDN (allowing purge requests to be sent directly from WordPress) if we set up the API connection.

Click “my settings” in the top-right corner Click “API” in the sub-menu that appears You’ll notice that we don’t have any API Keys configured. Click “Add Key” Add a description if you’d like and then click “Save” Your API ID and Key will appear here, I’ve removed my Key from the screenshot

That’s all we need to do in MaxCDN right now. In the next section, we’ll configure W3 Total Cache using the pull zone we just created.

W3 Total Cache configuration steps:

Once logged into WordPress, navigate to the W3 Total Cache by clicking on the “Performance” tab towards the bottom of your Dashboard sidebar. From the General Setting page, ensure that CDN is disabled and select “NetDNA / MaxCDN” from dropdown menu Navigate to the CDN Settings. Enter your API ID and Key, your CDN URL, and click “Test NetDNA”

You should see “Test passed” in green if you’ve done everything correctly. Save your settings and then navigate back to the General Settings page. Enable the CDN by clicking the check box and saving your settings.

Power user tip #1: Configure a subdomain like cdn.yourdomain.com so we can get rid of long MaxCDN URL. W3 Total Cache lets you configure multiple CDN subdomains, so we’ll go ahead and configure a few.

Log back into MaxCDN and from the dashboard, click “Manage” next to the Pull Zone you created: Then click “Settings” right above the Zone Configuration You’re presented with an overview of your Pull Zone settings The section we want is labeled Custom Domains. Click “Edit” and enter your desired subdomains Click “Update” and then navigate to your DNS control panel. Create a CNAME entry for every subdomain that you entered in MaxCDN, and alias them to your MaxCDN URL Once DNS propagates, you can update W3TC with the subdomains and replace the long CDN URL with the new, custom ones

Power user tip #2: We can further improve page loads speeds by using a completely different domain for the CDN, ensuring that the domain is cookie-free. So if your site is www.domain.com, you could set domain.<strong>net</strong> as the domain to use with your CDN. Note: this assumes that you own domain.net and have access to its DNS control panel. That’s it! If you have any issues getting it working, drop us a line. If you’d like us to set this up for you, we’re happy to help.