
{"id":8154,"date":"2019-07-17T17:17:00","date_gmt":"2019-07-17T17:17:00","guid":{"rendered":"https:\/\/rax-stg-wp-aws.com\/blogs\/static-storage-website-with-azure-front-door\/"},"modified":"2026-11-03T19:29:27","modified_gmt":"2026-11-03T19:29:27","slug":"static-storage-website-with-azure-front-door","status":"publish","type":"blogs","link":"https:\/\/www.rackspace.com\/de\/blogs\/static-storage-website-with-azure-front-door\/","title":{"rendered":"Static storage website with Azure Front Door"},"content":{"rendered":"<p><strong>Introduction<\/strong><\/p>\n<p>One of the Azure multi-region topologies I have seen included an Azure Traffic Manager with Azure App Service Web Apps in each region. Some customers are cost conscious and would rather have a static web page display after a region failure with some generic message that there is a problem and it is being looked into. With the introduction of Azure Front Door, there are many capabilities that will not only enhance our live site, but will also serve as a cost-effective failover to a static website in a storage account.<\/p>\n<p>At a high level, the following steps are needed to configure a static website within Azure storage account:<\/p>\n<p>1) Create a <strong>general purpose v2<\/strong>&nbsp;storage account.<br \/>\n2) Click on <strong>Static website<\/strong>&nbsp;in the portal blade, enable it, and specify the <strong>Index document name<\/strong>.<br \/>\n3) Upload the static HTML page to the <strong>$web<\/strong>&nbsp;container.<\/p>\n<p>The primary endpoint for the static website then returns the uploaded HTML page.<\/p>\n<p><strong>Detailed configuration steps<\/strong><\/p>\n<p>Following are more detailed instructions.<\/p>\n<p><strong>1. Provision the resource<\/strong><\/p>\n<p>Within the Azure portal, provision a new <strong>Azure Front Door<\/strong>&nbsp;resource. Then, set the front-end host fully qualified domain name (FQDN), assign a unique name, and add it.<\/p>\n<p><strong>2. Add the back-end pool<\/strong><\/p>\n<p>Add a back-end pool with a custom host name and back-end host header set to the URL of the static storage account website.<\/p>\n<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/blog_article_images\/26610-body-afdBePool.png\" alt=\"Azure website pic 1\" \/><\/p>\n<p><strong>&nbsp;3. Create a routing rule&nbsp;<\/strong><\/p>\n<p>Create a routing rule and save it with all the defaults. Within a few minutes, the FQDN of the front end resolves to the storage account. Add another back end to the existing back-end pool of your primary web app and then set the priorities to route the way you want it to.<\/p>\n<p>Normally, Azure Front Door is used for customer-facing environments, which enables you to set apex domain-based routing. At a high level, it lets you do the following things:<\/p>\n<p>1) Provision an Azure DNS zone.<br \/>\n2) Set your nameservers for the custom domain to point to the Azure nameservers for the DNS zone.<br \/>\n3) Create an<strong> <em>A<\/em> <\/strong>record with a name of <strong>@.<\/strong><br \/>\n4) Select<strong> <em>Yes<\/em><\/strong>&nbsp;for the Alias record set and choose an Alias type of <strong>Azure Resource.<\/strong><br \/>\n5) Select the Azure Resource Name for Azure Front Door in the Azure resource dropdown.<\/p>\n<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/blog_article_images\/26610-body-dns.png\" alt=\"azure website pic 2\" \/><\/p>\n<p><strong>&nbsp;4. Add a new front-end host<\/strong><\/p>\n<p>\nBack in the Azure Front Door designer, add a new front-end host for the custom apex domain. Select both the existing routing rule and the custom apex domain. Then, update the setting.<\/p>\n<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/blog_article_images\/26610-body-routingRule.png\" alt=\"azure website pic 3\" \/><\/p>\n<p>\nYou have two options to enable an HTTPS protocol for a custom domain within Azure Front Door. Front Door generates a certificate and manages it, or you can use your own certificate. Because I have my own prefix for my domains, I chose the second option, which involves Azure Key Vault. For more information, see&nbsp;<a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/frontdoor\/front-door-custom-domain-https#ssl-certificates\">Instructions for Azure Front Door HTTPS<\/a>&nbsp;and follow the instructions to configure it.&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Static storage website with Azure Front Door<\/p>\n","protected":false},"author":2,"featured_media":8156,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","format":"standard","meta":{"content-type":"","nid":"26610","content_type":"blog","created_by":"10130","authored_on":"2024-02-13T18:17:00+00:00","field_article_industries":"","tag_category":"Technical","field_blog_author_text":"by Rackspace Technology Staff","seo_description":"Configure a static storage website with Azure Front Door for efficient failover. Leverage Front Door's capabilities for enhanced site reliability.\r\n","field_featured_image":"","insights_image":"\/wp-content\/uploads\/2026\/blog_technical_images\/26610-insights_image-microsoft-technical-blog-1-insights.jpg","field_partners":"","rxt_platforms":"Microsoft Azure","product":"","publisheddate":"2019-07-17T17:17:00","rxt_solutions":"Multicloud, Next-Gen Data Platforms","opengraph_tag":"","x_tag":"","teaser_flag":"Technical Blog","seo_titile":"Static storage website with Azure Front Door | Rackspace Technology","field_topics":"","field_slug":"azure-front-door-storage-static-website","footnotes":""},"categories":[178],"tags":[204],"class_list":["post-8154","blogs","type-blogs","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-technical"],"_links":{"self":[{"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/blogs\/8154","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/blogs"}],"about":[{"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/types\/blogs"}],"author":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/comments?post=8154"}],"version-history":[{"count":3,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/blogs\/8154\/revisions"}],"predecessor-version":[{"id":9918,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/blogs\/8154\/revisions\/9918"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/media\/8156"}],"wp:attachment":[{"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/media?parent=8154"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/categories?post=8154"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rackspace.com\/de\/wp-json\/wp\/v2\/tags?post=8154"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}