So you want to host WordPress on Azure?
This guide will take you step-by-step through the process of deploying a WordPress website to Microsoft’s Azure cloud platform.
Start by reading through the Introduction section of this guide to learn about hosting WordPress on Azure, then complete each of the three parts in this guide.
Let’s get started!
In the first section of this guide you’ll learn how to Configure WordPress on Azure. Then, in the second section, you’ll learn how to Configure a Domain Name. Lastly, in the third section, you’ll learn how to Configure SSL for your website.
Good luck, and don’t forget to reach out to the WordPress Cloud Hosting Support group if you get stuck on any section of the tutorial!
I. Configure WordPress
II. Configure Domain Name
III. Configure SSL
In this introduction section of the guide, you will learn about the pros and cons of moving to Azure. You will also learn about the costs of hosting WordPress on Azure, including the importance of deploying a solution that balances efficiency with performance.
After you’ve read through this introdution, the guide will then walk you through the process of deploying a WordPress website to Azure.
Why host WordPress on Azure?
Azure is an excellent platform for hosting WordPress websites that require scalability, resiliency, and performance.
The #1 reason why you should host WordPress on Azure is because you’re developing a website that you predict will grow in size and complexity over time, and you require a highly-scalable infrasture that can grow with your website.
Below is a list of pros and cons to consider when determining whether to host your WordPress website on Azure:
Pros of Azure hosting
- Significantly Increased performance
- Virtually unlimited scalability
- Highly cost-effective for large projects
- Greater control and flexibility
- Native integration with Microsoft services
Cons of Azure hosting
- Steep learning curve for beginners
- Requires significant time investment
- No customer support options included
- Greater risk exposure for new users
Cost of Hosting WordPress on Azure
The cost of hosting WordPress websites on Azure varies widely, and depends on many factors. Generally, the cost ranges between $7-$30 per month for typical WordPress websites.
Balancing efficiency and performance
When selecting the infrastructure to use for hosting your WordPress website on Azure, it’s important to understand the need for balancing efficiency and performance.
Before getting started, it’s important to understand that Azure, GCP, and Azure, offer different types of free-tiers. If your goal is to deploy a WordPress website for the lowest possible cost, per the efficiency model, then you should deploy on GCP, because it’s the only cloud provider to provide compute resources under it’s always-free tier.
Below is a side-by-side comparison of an efficiency ($7.16/month) vs. performance ($39.03/month) based configuration for hosting WordPress on Azure.
The efficiency configuration is optimal for low traffic websites (under 1000 daily users). At around $7.00/month, this configuration takes full advantage of Azure’s 12-months free tier, which provides a B1LS instance, as well as 30GiB of SSD persistent disk storage, all at no cost during the 12-months free tier.
This strictly efficiency-based model will allow you to host your WordPress website on Azure at a very low cost, however, larger websites strictly adhering to the efficiency model may incur performance issues.
The performance configuration is optimal for websites with higher traffic volumes (over 1000 daily users). At around $39/month, the performance configuration will delivery better performance than the efficiency configuration under heavy server load. However, unlike the efficiency configuration, the B2S instance is not covered under Azure’s 12-months free tier.
This strictly performance-based model will allow for your website to out-perform the efficiency model, especially under heavy load. However, low-traffic websites that utlize this configuration may be allocating resources inefficiently.
Which configuration should you choose?
One of the benefits of migrating to Azure is that you can take advantage of their ‘pay-as-you-go’ model, which means only paying for the resources that your website requires, and nothing more. That being said, a good rule of thumb is to start small, and upgrade only when necessary. To determine whether upgrading is necessary, you will need to monitor your instance’s performance metrics.
To access your instance’s performance metrics, start from the Azure sidebar menu and navigate to Azure Portal > Virtual Machines, then click on your instance. From here, you’ll see a Monitoring tab towards the middle of the page, which links to a dashboard displaying your instance’s performance merics.
The most important metric to assessing the performance of your instance is CPU usage. CPU usage consistently under 60% is ideal. If CPU usage is consistently over 60%, you may want want to consider upgrading your machine size.
In addition to CPU usage, you’ll also want to monitor the free space available on your persistent disk. To check available disk space, use the df command, as shown in the Linux commands tutorial.
Now that you’ve learned about balancing costs with efficiency and performance considerations, it’s time to get started deploying your website.
In this first part of the guide, you will deploy a WordPress website on Azure using the efficiency configuration, which consiststs of an Standard_B1ls instance and a 10GB Persistent Disk, at an estimated cost of around $1 per month (for 12 months only – if you need an Always-Free instance and storage, use Google Cloud instead).
1. Deploy WordPress
2. Customize Deployment
In this section of the Configure WordPress part of the guide, you will deploy your WordPress instance using the default settings. For the sake of simplicity, this tutorial leaves most of the default settings (including a 10GB HDD persistent disk) as is, and jumps quickly to the Review + create end screen. If you’d like to customize your deployment details further, click the series of Next: buttons instead of the Review + Create button.
Step 1: Choose a WordPress Image
Step 2: Choose an Instance Type
Step 3: Finalize deployment
In this second part of the guide, you will configure a custom domain name for your WordPress website on Azure. The instructions below use Namecheap as the domain name provider (which we recommend), however, the same instructions will be applicable regardless of which domain name provider you choose to use.
3. Copy Instance IP Address
4. Enable DNS Settings
5. Create DNS Records
In this third part of the guide, you will connect to your WordPress instance via SSH in order to execute a script which will automate the process of configuring SSL certificates for your WordPress website.
6. Connect to WordPress Instance
chmod 600 wordpress-website_key.pem
ssh -i "wordpress-website_key.pem" azure@[YOUR-INSTANCE-IP]
7. Execute SSL Script
After you’ve pressed Enter the script will prompt you with a series of questions, which you will answer by entering either y (for yes), or n (for no). We recommend answering each question in the following way, remembering to replace each bolded instance of 1pagezen with your own domain name or email:
Domain list : 1pagezen.com www.1pagezen.com
Enable HTTP to HTTPS redirection [Y/n]: y
Enable non-www to www redirection [Y/n]: n
Enable www to non-www redirection [y/N]: y
Do you agree to these changes? [Y/n]: y
E-mail address : [email protected]
Do you agree to the Let's Encrypt Subscriber Agreement? [Y/n]: y
Well done! You’ve successfull deployed a fully-functional WordPress website on Azure, however, there are still some very important concepts that need to be covered. In this Next Steps… section of the guide you will learn how to retrieve your login credentials and login to your WordPress website, and optionally import an existing WordPress website.
8. Login to WordPress
sudo cat /home/bitnami/bitnami_credentials
9. Import a WordPress Website
You can use the All-in-One WP Migration Unlimited Plugin to quickly export and import your existing WordPress website to it’s new location on Azure.
Check out this tutorial for a list of step-by-step instructions.
10. Get Community Support
If you need help with this tutorial (or any other tutorial), then make sure to join the WordPress Cloud Hosting support group on Facebook.
Did it work?
Now that you’re hosting WordPress on Azure, be sure to check out these other great WordPress on Azure tutorials.
If you have general questions or comments about this tutorial, please feel free to leave them below. If you get stuck on a specific tutorial, please post your questions and comments on that tutorial’s page.