No doubt WordPress is the number #1 publishing platform right now, and addressing your blog reader aptly is right at your arms – speed, contents & responsiveness. This articles, as a part of cloud computing application, covers a fundamental step by step guide to run WordPress or other popular CMS on Microsoft’s new cloud platform called Azure.

Once you are ready with a Windows Azure account that has the Windows Azure Web Sites feature enabled, you can complete this tutorial. So, with this information handy let’s proceed to create your WordPress based blog on the cloud or even move your traditionally hosted WordPress blog to the cloud.

WordPress in Windows Azure Cloud Platform, make up logos
WordPress in Windows Azure Cloud Platform, make up logos

Getting a free Windows Azure Cloud account to work

Don’t worry, there are many ways to create FREE Windows Azure account, mind it I’m saying a free Windows Azure Cloud account to work – work means you can have enough time to develop, test and even deploy for live trial of your application or website. No any cloud business gives you free cloud account for a long time production.

Here are some interesting points on why you should host your WordPress blog or other CMS sites in cloud based server or just have a CDN or atleast get linked with a kind of Cloud Network (surprising technically this works!)

  • Speedy content/media delivery to your WordPress blog via Content Data/Delivery Networks (CDN)
  • Website scaling to address bandwidth/traffic using power of Cloud scalability & flexibility
  • Omnipresent value of Cloud – disaster protection, data & server redundancy (unless your blog competes TWN)
  • … rest you name ’em, how you can exploit Cloud potentials to your WordPress blog.

Get a free Windows Azure Cloud account to work by signing up with one of the following offers Microsoft provides, offers to create free Azure account might change anytime, so grab the chance right now if you want to try Azure. Here are steps on that from a blog of Microsoft’s employee.

  • Azure Free Trial Account: 90 day trial account (major limitation: fixed DNS, 10 free Azure Website)
  • Windows Azure Free Trial account: 1 month unlimited
  • Free 1-year Windows Azure Subscription free trial for MSDN/TechNet account holders (check with your MSDN/Technet subscription status to see if you are eligible for one year’s access of Azure subscription for free)
  • Pay-As-You-Go model of Windows Azure subscription (limited to your first month’s of sign up, little tricky one)

Creating a Web Site in the Azure Portal

This step by step tutorial of deploying a WordPress site or blog in Azure portal features screenshot from a real website installation workout for NepaliKeyboard.com, a website dedicated to Nepali language input database. DO NOT try to play around with sensitive information displayed, they are entirely for the informational purposes.

Step 1. Access your Windows Azure Management Portal.

Step 2. From the dashboard, click New >> Web Site >> From Gallery. This is because WordPress can be installed from the gallery in the Azure dashboard.

Web application gallery breadcrumb in Windows Azure Management Workspace
Web application gallery breadcrumb in Windows Azure Management Workspace

Step 3. Find Apps for Azure, for sure select WordPress.

Select WordPress from Blogs section, among the available Apps for Azure
Select WordPress from Blogs section, among the available Apps for Azure

WordPress is a state-of-the-art publishing platform with a focus on aesthetics, web standards, and usability.

 Step 4. Configure Your Web App with the subdomain of your choice, database based on whether you want a new one or use the existing one (be warned that the cloud compute resources you might be using!)

Configuring your Web App for Windows Azure with subdomain, database and database region
Configuring your Web App for Windows Azure with subdomain, database and database region

Step 5. Supply the name of your New MySQL Database, and opt for the database location or region. Ensure that you agree to the Clear DB’s legal terms, interesting that Microsoft has the legal rights to access your WordPress database when needed.

Step 6. Now having your database and website URL (subdomain so far) ready, Windows Azure initiate build and deploy the operations. Operations performed, their status or deployment is notified.

How to launch & manage WordPress site in Azure Dashboard

Step 7. Go to the Windows Azure management dashboard or simply refresh your screen (after step 5) where you would see the site just created with status “Running”, click this to view detail of what’s going on the cloud.

Step 8. Open the blog link (site URL) ie a subdomain with .azurewebsites.net top domain (the URL is what you entered during step 4 or can be opened from the SITE URL at the right section of the preview dashboard, our example nepalikeyboard.azurewebsites.net.

Step 9. Set up your WordPress site/blog if not already. Supply the database credentials required for this (if asked, which shouldn’t be usually, since WP configure file takes these parameters automatically from the cloud host service), which can be obtained from the configure tab in the dashboard.

Step 10. Voila, you have a ready WordPress blog running in Windows Azure cloud. Browse it, and back to dashboard you can see the resourced use up while surfing and bringing back the site to the public display.

How to setup custom domain for WordPress blog in Azure

Step 11. Obviously, we don’t want to have a subdomain site, for that prepare some information to change in your domain registrar’s side and some in the Azure’s side. Go to the “Configure tab” in the preview.

Configuring custom domain for Windows Azure cloud based WordPress blog
Configuring custom domain for Windows Azure cloud based WordPress blog

Step 12. Since custom domains in Windows Azure can only be used when in the Shared and Reserved modes, you have to opt either of these. Go to the “Scale” tab, and select Shared. After hitting “Save” you will be shown with a notification that this setting will have an effect in Billing which you might want to check once. For the safest approach, block further billing unless you grant explicitly.

Step 13. Now click “Manage Domains” at the button bar, where you would map your custom domains. Now, open the DNS Manager in your domain registrar and add a new CNAME value in the zone file of the domain. This means, point the following CNAME (also illustrated in the screenshot.)

CNAME host -> points to
www.yourdomain.com -> nepalikeyboard.azurewebsites.net,
or
from awverify.www.yourdomain.com to awverify.nepalikeyboard.azurewebsites.net.
DNS Manager for editing Domain's Zone file, to alter cname to verify domain to use with Windows Azure websites
DNS Manager for editing Domain’s Zone file, to alter cname to verify domain to use with Windows Azure websites

Web Site Mode Scaling: Windows Azure offers three modes for you to run your web sites: Free, Shared, and Reserved. In the Free and Shared modes, all web sites run in a multi-tenant environment and have quotas for CPU, memory, and network usage. You can decide which sites you want to run in Free mode and which sites you want to run in Shared mode. Free mode has strict quotas, and Shared mode has more relaxed quotas. The maximum number of sites you can run in Free mode may vary with your plan. The Reserved mode applies to all your sites and makes them run on dedicated virtual machines that correspond to the standard Windows Azure compute resources.

A word of Caution with Azure

However, if you do not want to host your WordPress blog entirely at the clouds of Azure service, you can only create a CDN (Content Delivery Network) to host your blog’s static files by simply using this WordPress plugin called “Window Azure Storage“.

Here is a video tutorial by Winspark network on installing WordPress on Windows Azure

For details and on how to install various CMS and website frameworks or custom code, please go thru : How to Create and Deploy a Web Site from Windows Azure Services Team.

Experiencing facts with WordPress on Azure:

  • As of  January 2013 WordPress powers one of every six websites on the Internet. That is nearly 60 million websites in all, with thousands more are popping up every day.
  • Darker side of Cloud Computing – interestingly Microsoft has the legal rights to access your WordPress database when needed as stated in #5 above.
  • Due to performance, file size limitation of 2MB (import/export), no. of queries limited in the Azure cloud database and customization (plugins & no direct access to server files), I dumped Windows Azure after a couple of month.
  • We didn’t achieve any significant faster website loading time with Windows Azure (didn’t try to explore why, as the access was limited!)
  • Installing Windows in Microsoft’s Azure Cloud platform might be a nightmare since not much of customization can be done, or still many plugins doesn’t work in Azure, and you might be too frustrating to depend on Microsoft’s limited scope to work around.
  • We even tried deploying WordPress via WebMatrix but Microsoft limits too much on their service, maybe not Vendor lock-in but looks like that.
  • Also, even after perfect configuration of the website, Windows Azure was still showing some problems like this “This site is currently not available…” what a joke, the site is in cloud – global cloud – and not available, so when will?
Window Azure cloud NOT available
Window Azure cloud NOT available

Disclaimer: I’m a certified Cloud Consultant helping SOHO, individual bloggers, academics and others. I can be reached to discuss your cloud need – even just to consult on whether you need a CDN for your blog.