Super Cheap Azure Web Site using Azure CDN

In planning to host a very low traffic web site, I find Azure Web App to be expensive compared to other managed hosting providers. The cheapest App Service pricing option is the Free tier. But these do not support https and custom domains. Even B1 Basic is a bit pricey at $81CAD/month if you hosting just one web site under the one App Service plan.
azurecdn1

I will show how to host on Free tier and get some of the features that are essential for a viable public website by using Azure CDN as a proxy.

Here are my requirements:

  • Host an ASP .NET web site on Azure App Service
  • Performance/Load: Very low traffic.
  • Web site is generally a static and is updated on occasion. Assume every few weeks.
  • Support custom domains and https

 

  1. Create an Azure Web App along with a new or existing Azure App Service Plan with the free pricing tier.
    azurecdn2
    The free tier is on a shared compute infrastructure with other customers. As well as CPU quota such as 60 CPU minutes per day for free tier.Click Create and wait for the web app to provision.
  2. To deploy an application from a repository, I click Deployment option and I choose to deploy from a GitHub repo in my GitHub account.
    azurecdn3
    Before I choose a project, I had already forked a repo from https://github.com/Azure-Samples/app-service-web-dotnet-get-started
    azurecdn4
    Wait for some time as the application deploys
    azurecdn5
  3. To validate, visit the web app using the azurewebsites.net based URL.
    azurecdn6
  4. To setup the Azure CDN, click the Networking blade and then Configure Azure CDN for your app
    azurecdn12
  5. Create a new Endpoint
    I consider this endpoint like a proxy to the Azure Web App.
    azurecdn8
    I chose Premium Verizon considering $0.21 CAD per GB is still very cheap as long as you don’t have many hi-resolution audio, video and images.
    azurecdn9
    Upon creation you will see the following
    azurecdn10I had to wait about 20 minutes before the azureedge.net based URL loaded my web app successfully. It may take much longer in other cases.
    azurecdn11
  6. To add a custom domain to the Azure CDN endpoint, click on Custom domains and + Custom domain
    azurecdn12
    azurecdn13
    As indicated in the instructions, go to your DNS provider and add a CNAME first.
  7. Going to my DNS provider and managing the DNS records, I add a CNAME recordazurecdn14

  8. Go back to Azure Portal and add the custom domain and the custom hostname is verified.
    azurecdn15

  9. To add HTTPS support to the custom domain, click Custom domains, click on your hostname and enable custom domain HTTPS.
    The attractive feature is that the SSL certificate is included with the Premium Verizon plan
    azurecdn16
  10. Verify custom domain
    azurecdn17

 

The end.

3 thoughts on “Super Cheap Azure Web Site using Azure CDN

  1. Pingback: Load Testing Azure CDN Caching with Azure Web App – Roy Kim on Azure, Office 365 and SharePoint

  2. Bora

    Great Article Roy.

    One issue I had was URL rewriting. I added a www CNAME record for my domain, pointing to mysite.azureedge.net CDN endpoint, and I linked my custom domain to the CDN with SSL from the Azure portal as described in this article. But when I visit mydomain.com, it redirects me to mysite.azureedge.net and the address bar in the browser shows the CDN address instead of my domain. Not sure if this is a bug, as I’m using the new Microsoft CDN in preview mode.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s