Multisite CDN with Domain Mapping

Looking for some help or guidance on how to setup a CDN for my Multisite installation. One key thing to note is that the files should be able to work with a mapped subdomain or non mapped sub domain using the WPMUDEV Domain Mapping tool and I have Rackspace cloud files as a CDN.

Thanks!

  • Jack Kitterhing
    • Code Norris

    Hi there @nate

    I hope you are well today.

    I have never personally used the Rackspace cloud files CDN, though I have used many other CDN’s, do you know if they support wildcards? I’m not 100% sure if their CDN will break when using domain mapping, it may be worth asking their support on that as well, as basically

    Domain Mapping effectively has all domain requests come in through the main wp index.php and then sunrise sorts out which blog ID to use, do you have some screenshots of the CDN interface?

    Thank you for being a WPMU DEV member!

    Kind Regards

    Jack.

  • Scott
    • New Recruit

    Not sure about Rackspace but I use Amazon Cloudspace and the CDN section of W3 Total Cache plugin. Works great on my multisite with both mapped and non mapped domains.

    I do see Rackspace in the dropdown list of W3 Total Cache CDN section.

  • wlpdrpat
    • Site Builder, Child of Zeus

    I’m not familiar with Rackspace but I have been using Edgecast with WP Super Cache for the couple months (thankfully I started just before the big bot attack).

    Here is my feedback on my experience thus far: #@!%&”$&!!

    But seriously, WP Super Cache has a network admin page, which I naturally figured could be used to manage the entire network but I was wrong – you must manage CDN settings per site except for one very important setting – the checkbox to turn on or off CDN support. That one setting is a global setting no matter where you manage it. Of course it doesn’t say that anywhere.

    So, I went through and added the CDN URL I was planning to use for each site and used the checkbox to either turn it on or off per site thinking that it was a per site management. The last site I setup I turned off the CDN support and when I checked a few sites I realized that it was turned off on all of them. So, I turn it on on the ones I want it on and low and behold it turns it on on the sites that I want it off.

    Hard to believe but it took me a while to figure out what was going on (the on/off was a global setting no matter what site you change it on).

    Once I figured that out – I then had to go back through all of my sites that I wanted CDN turned off and define the CDN url as the site URL. The default CDN URL is the sub-domain but I had already added the CDN URL that I was planning to use but had not yet configured, which resulted in my sites displaying 404 for all files as the CDN URL was not properly configured at the CDN.

    Because the CDN URL default setting is defined as the sub-domain URL on mapped domain sites everything was remapped back to the sub-domain site by turning on CDN support. Thus the reason I went through and defined the CDN URL I was planning to use for each site.

    In the end I figured it all out. Here are the steps that I should have taken to avoid creating a bit of a disaster:

    1. Setup CDN URL in my Edgecast account for each site that I want to use CDN.

    2. Setup CDN cname in DNS and allow time for this to resolve correctly.

    3. Go through all mapped domains and either define a CDN URL that is correctly setup or define the CDN URL as the mapped domain to avoid it being remapped to the sub-domain of the site.

    4. Turn on CDN support from any site in multisite (understanding that it is a global setting).

    Note: WP Super Cache with CDN support currently does not provide support for uploaded files and does not allow defining a global CDN URL, which to me makes no sense – do either one but not both.

    Since it is not providing support for uploads anyway it makes no sense that it can’t define a global CDN URL. I understand that to support uploads in multisite would be a bit trickier because .htaccess rewrites blog.dir to files but you would think that the person who initially created the WPMU as a plugin would have taken that into consideration in the continuing development of the WP Super Cache plugin.

    So, at this point I can say the following about using WP Super Cache and Edgecast to create CDN support for Multisite:

    Edgecast doesn’t support wildcard configurations for sub-domain multisite installs through their system but their support team say they could define a wildcard manually. Edgecast supposedly is providing CDN support for WordPress.com and has created an API connection for WordPress.com to make things work seamlessly for them. However, they will not allow anyone else to use this API that they built for WordPress.com – although they are advertising that they provide application acceleration for wordpress (a new CDN system that is supposed to speed up your wordpress application) they don’t allow you to use the tools that already exist but insist that you either use their system to manually setup and configure a cname for each site or create your own API. If you do create the API they want to change you significantly more to access it. However, you can setup an unlimited number of domain names through their system manually and once they are setup the CDN itself works great (just a major pain setting up every site when you have a couple hundred to setup). Their basic CDN cost is $300/mo and requires a 12 month commitment. If you decide to cancel it has to be in writing at least 90 days before your 12 month commitment ends or they automatically extend your contract for an additional 12 months (yes, I got caught in that last year as I only gave them 30 days notice to cancel and had to keep it for another 12 months).

    WP Super Cache does provide support for CDN and multisite but it is poorly documented and some of the default configurations simply make no sense. Trying to add CDN support to an existing network of hundreds of sites leaves very little to be desired. Overall I have always liked WP Super Cache but I must admit that I am disappointed with the CDN system.

    In the coming week I am going to be testing W3 Total Cache and testing a new CDN provider as well (my 12 month contract with Edgecast concludes next month and unless I absolutely have no alternative I will be discontinuing their service). http://www.accuwebhosting.com/cdn-hosting.html is offering the first month for free and 10Gb transfer for 3.95/mo or 100Gb for 11.95/mo. Thus far I have tested this CDN on one site and it works like a charm with a single site. Once I have tested it on my full network I will let you know my findings.

    W3 Total Cache isn’t very well documented for Multisite and global configurations yet either but I found this article on reddit that details how to configure the global on W3 Total Cache: http://www.reddit.com/r/Wordpress/comments/193641/w3_total_cache_multisite_install/ and it is my understanding that W3 Total Cache also support uploads.

    Again I will let you know my findings next week.

    Pat

  • denny
    • Design Lord, Child of Thor

    Hey all,

    Is W3TC still the best option for multisite, domain-mapped CDN enabling? I’d heard less-than-stellar things about W3TC in the past (specifically regarding it becoming abandonware) and installing it on my network earlier today promptly resulted in 500 errors from the htaccess rules it added. Not a good look :slight_frown:

    Surprisingly I can’t find much info on the topic of CDN + WPMU + domain mapping. I’m simply looking for something to speed up delivery of custom-mapped domain subsites without having to set anything up on the DNS side (as we won’t always have access to customer’s domain settings) and without having to activate/provide settings for each subsite (i.e. I want one-time network-level configuration of the CDN).

    Has anyone achieved this in their WPMU setup? Any guidance is much appreciated!

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.