{"id":655,"date":"2021-01-06T02:20:00","date_gmt":"2021-01-05T13:20:00","guid":{"rendered":"https:\/\/blog.wiseowls.co.nz\/?p=655"},"modified":"2026-03-08T00:49:20","modified_gmt":"2026-03-07T11:49:20","slug":"cloud-face-off-hosting-static-website","status":"publish","type":"post","link":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/","title":{"rendered":"Cloud face-off: hosting static website"},"content":{"rendered":"<p>With the explosive growth of online services we&#8217;ve seen over 2020, it&#8217;s pretty clear the Public Cloud is going to pervade our lives more and more. The Internet is full of articles listing differences between platforms. But when we look closer, it all seems to pretty much fall into same groups: compute, storage and networking. Yes, naming is is different, but fundamentals are pretty much identical between all major providers.<\/p>\n<h2 class=\"wp-block-heading\">Or are they?<\/h2>\n<p>Today we&#8217;re going to try and compare two providers by attempting to achieve the same basic goal &#8211; hosting a static web page. <\/p>\n<p>the web page is going to be extremely simple: <\/p>\n<pre class=\"wp-block-code\"><code lang=\"markup\" class=\"language-markup\">&lt;html&gt;\n     &lt;body ng-app=\"myApp\" ng-controller=\"myCtrl\"&gt;\n     &lt;h2&gt;Serverless API endpoint&lt;\/h2&gt;\n     &lt;input type=\"text\" ng-model=\"apiUrl\" \/&gt;&lt;button ng-click=\"fetch(apiUrl)\" &gt;Fetch&lt;\/button&gt;\n         &lt;h2&gt;Function output below&lt;\/h2&gt;\n         &lt;pre&gt;\n             {{ eventBody| json }}\n         &lt;\/pre&gt;\n         &lt;script type=\"text\/javascript\" src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/angular.js\/1.8.2\/angular.min.js\" \/&gt;\n     &lt;\/body&gt;\n &lt;\/html&gt;<\/code><\/pre>\n<h2 class=\"wp-block-heading\">S3<\/h2>\n<p>With AWS, static website hosting is <a href=\"https:\/\/docs.aws.amazon.com\/AmazonS3\/latest\/dev\/WebsiteHosting.html\">a feature of S3<\/a>. All we need to do is create a bucket, upload our files and enable &#8220;Static website hosting&#8221; in Properties: <\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"808\" height=\"862\" src=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image.png\" alt=\"AWS S3 bucket creation page for static website hosting\" class=\"wp-image-658\" srcset=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image.png 808w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-281x300.png 281w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-768x819.png 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><figcaption>these warnings seems to hint at something&#8230;<\/figcaption><\/figure>\n<p>One may think that this is all we have to do. But that huge information message on the page seems to be hinting at the fact that we might need to enable public access to the bucket. Let us test our theory:<\/p>\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-1.png\" alt=\"S3 static website hosting configuration toggle\" class=\"wp-image-659\" width=\"761\" height=\"242\" srcset=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-1.png 761w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-1-300x95.png 300w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><figcaption>indeed, there&#8217;d be no public access to our static assets by default<\/figcaption><\/figure>\n<p>okay, this is fair enough &#8211; making a bucket secure by default is a good idea. One point to note here, is that enabling public access on this only bucket will not be enough. We will also need to disable &#8220;Block Public Access&#8221; on account level, which seems a bit too extreme at first. But hey, you cannot be too secure, right. AWS goes to great lengths to make it very obvious when customers do something potentially dangerous. Anyway, we&#8217;d go and enable the public access on account and bucket as instructed:<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"381\" height=\"258\" src=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-5.png\" alt=\"Azure Storage Account static website settings\" class=\"wp-image-665\" srcset=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-5.png 381w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-5-300x203.png 300w\" sizes=\"auto, (max-width: 381px) 85vw, 381px\" \/><\/figure>\n<p>The first thing that jumps out here is a &#8220;Not Secure&#8221; warning. Indeed, S3 exposes the website via <a href=\"https:\/\/docs.aws.amazon.com\/AmazonS3\/latest\/dev\/WebsiteEndpoints.html\">good old HTTP<\/a>. And if we wanted secure transport &#8211; we&#8217;d have to opt for CloudFront.<\/p>\n<h2 class=\"wp-block-heading\">Storage account<\/h2>\n<p>With Azure, the very first thing that we&#8217;d get to deal with would be the naming convention: Storage Account names can only contain lowercase letters and numbers. So right out of the gate, we&#8217;ll have to strip all dashes from our name of choice. Going through the wizard it&#8217;s relatively easy to miss the &#8220;Networking&#8221; section, but it&#8217;s exactly here we get to chose if our account will have public access or not. And by default it will be! So if you want it &#8211; you&#8217;ll have to <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/storage\/common\/storage-network-security?tabs=azure-portal\">tweak the security<\/a>. Anyway, moving on to &#8220;Advanced&#8221; tab, we&#8217;re presented with another key difference: Storage Account endpoints use HTTPS by default.<\/p>\n<p>Having created the account we should first enable the &#8220;Static Website hosting&#8221; option. <\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"705\" height=\"491\" src=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-4.png\" alt=\"S3 bucket policy configuration for public access\" class=\"wp-image-664\" srcset=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-4.png 705w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-4-300x209.png 300w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><\/figure>\n<p>Reason for this order is that Azure <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/storage\/blobs\/storage-blob-static-website#setting-up-a-static-website\">creates a special container <\/a>called <strong>$web<\/strong>, that we&#8217;ll then upload files to. But after we have done that &#8211; it&#8217;s pretty much done:<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"445\" height=\"261\" src=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-6.png\" alt=\"Azure Storage blob container with uploaded static files\" class=\"wp-image-666\" srcset=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-6.png 445w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-6-300x176.png 300w\" sizes=\"auto, (max-width: 445px) 85vw, 445px\" \/><\/figure>\n<h2 class=\"wp-block-heading\">CORS<\/h2>\n<p>Both AWS and Azure allow configuring CORS for static websites. AWS is pretty upfront about it <a href=\"https:\/\/docs.aws.amazon.com\/AmazonS3\/latest\/dev\/cors.html\">in their docs<\/a>. Azure however makes a <a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/storage\/blobs\/storage-blob-static-website#viewing-content\">specific callout<\/a> that CORS is not supported on static websites. My testing, however, indicates that it seems to work as intended. Consider the following scenario. We&#8217;d use the same website, but add a web font. And load it from across the other cloud: so Azure copy of the site will attempt to source the font from AWS and vice versa:<\/p>\n<pre class=\"wp-block-code\"><code lang=\"markup\" class=\"language-markup\">&lt;link rel=\"stylesheet\" href=\"css\/stylesheet-aws.css\" type=\"text\/css\" charset=\"utf-8\" \/&gt;\n&lt;style type=\"text\/css\"&gt;\nbody {\nfont-family: \"potta_oneregular\"\n}\n&lt;\/style&gt;<\/code><\/pre>\n<p>and the stylesheet would look like so (note the URL pointing to Azure):<\/p>\n<pre class=\"wp-block-code\"><code lang=\"css\" class=\"language-css\">@font-face {\n     font-family: 'potta_oneregular';\n     src: url('https:\/\/cloudfaceoffworkload.z26.web.core.windows.net\/css\/pottaone-regular-webfont.woff2') format('woff2'),\n          url('https:\/\/cloudfaceoffworkload.z26.web.core.windows.net\/css\/pottaone-regular-webfont.woff') format('woff');\n     font-weight: normal;\n     font-style: normal;\n }<\/code><\/pre>\n<p>initially, this set up indeed results in a CORS error:<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1023\" height=\"114\" src=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-7.png\" alt=\"Azure Storage blob container with uploaded static files\" class=\"wp-image-668\" srcset=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-7.png 1023w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-7-300x33.png 300w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-7-768x86.png 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n<p>but the fix is very easy, just set up CORS in Azure:<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"284\" src=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-8-1024x284.png\" alt=\"Azure Storage blob container with uploaded static files\" class=\"wp-image-669\" srcset=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-8-1024x284.png 1024w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-8-300x83.png 300w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-8-768x213.png 768w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-8-1536x426.png 1536w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-8-1568x434.png 1568w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-8.png 1801w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/figure>\n<p>and we get a fully working cross-origin resource consumption:<\/p>\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"657\" height=\"223\" src=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-9.png\" alt=\"Azure Storage blob container with uploaded static files\" class=\"wp-image-670\" srcset=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-9.png 657w, https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/image-9-300x102.png 300w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><\/figure>\n<p>Doing it the other way around is a bit more complicated. Even though AWS allows us to configure policies, lack of HTTPS endpoint means browsers will likely refuse to load the fonts and we&#8217;d be forced onto CloudFront (which has its own benefits, but that would be a completely different story).<\/p>\n<h2 class=\"wp-block-heading\">Summary<\/h2>\n<figure class=\"wp-block-table is-style-stripes\">\n<table>\n<thead>\n<tr>\n<th><strong>Aspect<\/strong><\/th>\n<th><strong>AWS S3<\/strong><\/th>\n<th><strong>Azure Storage Account<\/strong><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Public by default<\/td>\n<td>no<\/td>\n<td>yes<\/td>\n<\/tr>\n<tr>\n<td>HTTPS with own domain name<\/td>\n<td>no<\/td>\n<td>yes<\/td>\n<\/tr>\n<tr>\n<td>Allows for human-readable names<\/td>\n<td>yes<\/td>\n<td>not really<\/td>\n<\/tr>\n<tr>\n<td>CORS support<\/td>\n<td>configurable<\/td>\n<td><s>not<\/s> supported by static websites (despite what the docs claim)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/figure>\n","protected":false},"excerpt":{"rendered":"<p>With the explosive growth of online services we&#8217;ve seen over 2020, it&#8217;s pretty clear the Public Cloud is going to pervade our lives more and more. The Internet is full of articles listing differences between platforms. But when we look closer, it all seems to pretty much fall into same groups: compute, storage and networking. &hellip; <a href=\"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Cloud face-off: hosting static website&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":674,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[50],"tags":[47,48,46],"class_list":["post-655","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud","tag-aws","tag-azure","tag-cloud"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Cloud face-off: hosting static website - Timur and associates<\/title>\n<meta name=\"description\" content=\"In this article series we try to compare different cloud providers through the most basic cloud building blocks: storage, compute and networking.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cloud face-off: hosting static website - Timur and associates\" \/>\n<meta property=\"og:description\" content=\"In this article series we try to compare different cloud providers through the most basic cloud building blocks: storage, compute and networking.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/\" \/>\n<meta property=\"og:site_name\" content=\"Timur and associates\" \/>\n<meta property=\"article:published_time\" content=\"2021-01-05T13:20:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-07T11:49:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/cloud-computing-2001090_1920.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1500\" \/>\n\t<meta property=\"og:image:height\" content=\"396\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"timur\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@TimurKh\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/\"},\"author\":{\"name\":\"timur\",\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/#\\\/schema\\\/person\\\/34d0ed30d573b5bc317ea990bd2e0c59\"},\"headline\":\"Cloud face-off: hosting static website\",\"datePublished\":\"2021-01-05T13:20:00+00:00\",\"dateModified\":\"2026-03-07T11:49:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/\"},\"wordCount\":710,\"image\":{\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/cloud-computing-2001090_1920.jpg\",\"keywords\":[\"aws\",\"azure\",\"cloud\"],\"articleSection\":[\"Cloud\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/\",\"url\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/\",\"name\":\"Cloud face-off: hosting static website - Timur and associates\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/cloud-computing-2001090_1920.jpg\",\"datePublished\":\"2021-01-05T13:20:00+00:00\",\"dateModified\":\"2026-03-07T11:49:20+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/#\\\/schema\\\/person\\\/34d0ed30d573b5bc317ea990bd2e0c59\"},\"description\":\"In this article series we try to compare different cloud providers through the most basic cloud building blocks: storage, compute and networking.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/cloud-computing-2001090_1920.jpg\",\"contentUrl\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/cloud-computing-2001090_1920.jpg\",\"width\":1500,\"height\":396,\"caption\":\"header image, cloud computing\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/index.php\\\/2021\\\/01\\\/06\\\/cloud-face-off-hosting-static-website\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cloud face-off: hosting static website\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/#website\",\"url\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/\",\"name\":\"Timur and associates\",\"description\":\"Notes of an IT contractor\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blog.wiseowls.co.nz\\\/#\\\/schema\\\/person\\\/34d0ed30d573b5bc317ea990bd2e0c59\",\"name\":\"timur\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/23d55e17d4f0990ee4d12bc6e5dcfb58a292934efd62a185756876379e780b16?s=96&r=pg\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/23d55e17d4f0990ee4d12bc6e5dcfb58a292934efd62a185756876379e780b16?s=96&r=pg\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/23d55e17d4f0990ee4d12bc6e5dcfb58a292934efd62a185756876379e780b16?s=96&r=pg\",\"caption\":\"timur\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/TimurKh\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Cloud face-off: hosting static website - Timur and associates","description":"In this article series we try to compare different cloud providers through the most basic cloud building blocks: storage, compute and networking.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/","og_locale":"en_US","og_type":"article","og_title":"Cloud face-off: hosting static website - Timur and associates","og_description":"In this article series we try to compare different cloud providers through the most basic cloud building blocks: storage, compute and networking.","og_url":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/","og_site_name":"Timur and associates","article_published_time":"2021-01-05T13:20:00+00:00","article_modified_time":"2026-03-07T11:49:20+00:00","og_image":[{"width":1500,"height":396,"url":"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/cloud-computing-2001090_1920.jpg","type":"image\/jpeg"}],"author":"timur","twitter_card":"summary_large_image","twitter_creator":"@TimurKh","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/#article","isPartOf":{"@id":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/"},"author":{"name":"timur","@id":"https:\/\/blog.wiseowls.co.nz\/#\/schema\/person\/34d0ed30d573b5bc317ea990bd2e0c59"},"headline":"Cloud face-off: hosting static website","datePublished":"2021-01-05T13:20:00+00:00","dateModified":"2026-03-07T11:49:20+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/"},"wordCount":710,"image":{"@id":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/cloud-computing-2001090_1920.jpg","keywords":["aws","azure","cloud"],"articleSection":["Cloud"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/","url":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/","name":"Cloud face-off: hosting static website - Timur and associates","isPartOf":{"@id":"https:\/\/blog.wiseowls.co.nz\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/#primaryimage"},"image":{"@id":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/cloud-computing-2001090_1920.jpg","datePublished":"2021-01-05T13:20:00+00:00","dateModified":"2026-03-07T11:49:20+00:00","author":{"@id":"https:\/\/blog.wiseowls.co.nz\/#\/schema\/person\/34d0ed30d573b5bc317ea990bd2e0c59"},"description":"In this article series we try to compare different cloud providers through the most basic cloud building blocks: storage, compute and networking.","breadcrumb":{"@id":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/#primaryimage","url":"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/cloud-computing-2001090_1920.jpg","contentUrl":"https:\/\/blog.wiseowls.co.nz\/wp-content\/uploads\/2021\/02\/cloud-computing-2001090_1920.jpg","width":1500,"height":396,"caption":"header image, cloud computing"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.wiseowls.co.nz\/index.php\/2021\/01\/06\/cloud-face-off-hosting-static-website\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.wiseowls.co.nz\/"},{"@type":"ListItem","position":2,"name":"Cloud face-off: hosting static website"}]},{"@type":"WebSite","@id":"https:\/\/blog.wiseowls.co.nz\/#website","url":"https:\/\/blog.wiseowls.co.nz\/","name":"Timur and associates","description":"Notes of an IT contractor","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.wiseowls.co.nz\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/blog.wiseowls.co.nz\/#\/schema\/person\/34d0ed30d573b5bc317ea990bd2e0c59","name":"timur","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/23d55e17d4f0990ee4d12bc6e5dcfb58a292934efd62a185756876379e780b16?s=96&r=pg","url":"https:\/\/secure.gravatar.com\/avatar\/23d55e17d4f0990ee4d12bc6e5dcfb58a292934efd62a185756876379e780b16?s=96&r=pg","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/23d55e17d4f0990ee4d12bc6e5dcfb58a292934efd62a185756876379e780b16?s=96&r=pg","caption":"timur"},"sameAs":["https:\/\/x.com\/TimurKh"]}]}},"_links":{"self":[{"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/posts\/655","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/comments?post=655"}],"version-history":[{"count":14,"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/posts\/655\/revisions"}],"predecessor-version":[{"id":1370,"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/posts\/655\/revisions\/1370"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/media\/674"}],"wp:attachment":[{"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/media?parent=655"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/categories?post=655"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.wiseowls.co.nz\/index.php\/wp-json\/wp\/v2\/tags?post=655"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}