DEV Community

Cover image for How to Provide Storage for a Public Website in Azure
Onyemachi Doris
Onyemachi Doris

Posted on

How to Provide Storage for a Public Website in Azure

Table of Contents

  • Introduction
  • Key Storage Options in Azure
  • What is a Public Website?
  • Step-by-step guide on how to provide storage for a public website in Azure
  • Conclusion

Introduction

Azure provides a wide range of storage options to suit different website requirements from small personal blogs to large-scale enterprise applications. In my previous post, I have provided a clear explanation of the meaning of an Azure storage account and its uses.

Key Storage Options in Azure

The storage options provided by Azure include:
Azure Blob Storage: This is deal for storing unstructured data like images, videos, and documents. It offers scalability, durability, and performance.
Azure Files: Provides file shares that can be accessed by multiple applications and servers, making it suitable for shared data storage.
Azure Disk: Offers highly performant block-level storage for virtual machines, perfect for applications requiring low latency and high I/O.
Azure Cosmos DB: A fully managed NoSQL (Not Only SQL) database that can be used to store and query structured and semi-structured data.

What is a Public Website?

A public website is one that anyone can access online without needing a password or special permission. It's open to the general public and can be viewed by anyone with an internet connection.

Examples of public websites include:
News websites: Like BBC News, CNN, or The Guardian
E-commerce websites: Like Amazon, eBay, or Walmart
Social media platforms: Like Facebook, Twitter, or Instagram
Government websites: Like the White House, the UK Government, or the European Union
Personal blogs: Like personal websites or portfolios

Step-by-Step Guide on How to Provide Storage for a Public Website in Azure

Step 1. Create a storage account with high availability to support the public website.

  • In the Azure portal, search for and select Storage accounts.

Image description

  • Select + Create.

Image description

  • For resource group select new. Give your resource group a name and select OK.

  • Set the Storage account name to publicwebsite. Make sure the storage account name is unique by adding an identifier.

  • Take the defaults for other settings.

  • Select Review and then Create.

Image description

  • Wait for the storage account to deploy, and then select Go to resource.

Image description

This storage requires high availability if there’s a regional outage. Additionally, enable read access to the secondary region, Learn more about storage account redundancy.

  • In the storage account, in the Data management section, select the Redundancy blade.

  • Ensure Read-access Geo-redundant storage is selected.

Image description

  • Review the primary and secondary location information.

Information on the public website should be accessible without requiring customers to login.

  • In the storage account, in the Settings section, select the Configuration blade.

  • Ensure the Allow blob anonymous access setting is Enabled.

  • Be sure to Save your changes.

Image description

Step 2: Create a blob storage container with anonymous read access
The public website has various images and documents. Create a blob storage container for the content.

  • In your storage account, in the Data storage section, select the Containers blade.

  • Select + Container.

Image description

  • Ensure the Name of the container is public.

  • Select Create.

Image description

Customers should be able to view the images without being authenticated. Configure anonymous read access for the public container blobs.

  • Select your public container.

  • On the Overview blade, select Change access level.

  • Ensure the Public access level is Blob (anonymous read access for blobs only).

  • Select OK.

Image description

Step 3: Practice uploading files and testing access.
For testing, upload a file to the public container. The type of file doesn’t matter. A small image or text file is a good choice.

  • Ensure you are viewing your container.

  • Select Upload.

  • Browse to files and select a file. Browse to a file of your choice.

  • Select Upload.

Image description

  • Close the upload window, Refresh the page and ensure your file was uploaded.

Determine the URL for your uploaded file. Open a browser and test the URL.

  • Select your uploaded file.

  • On the Overview tab, copy the URL.

  • Paste the URL into a new browser tab.

Image description

  • If you have uploaded an image file it will display in the browser. Other file types should be downloaded.

Image description

Step 4: Configure soft delete
It’s important that the website documents can be restored if they’re deleted. Configure blob soft delete for 21 days.

  • Go to the Overview blade of the storage account.

  • On the Properties page, locate the Blob service section.

Image description

  • Select the Blob soft delete setting.

  • Ensure the Enable soft delete for blobs is checked.

  • Change the Keep deleted blobs for (in days setting is 21.

  • Notice you can also Enable soft delete for containers.

  • Don’t forget to Save your changes.

Image description

If something gets deleted, you need to practice using soft delete to restore the files.

  • Navigate to your container where you uploaded a file.

  • Select the file you uploaded and then select Delete.

  • Select OK to confirm deleting the file.

Image description

  • On the container Overview page, toggle the slider Show deleted blobs. This toggle is to the right of the search box.

Image description

  • Select your deleted file, and use the ellipses on the far right, to Undelete the file.

  • Refresh the container and confirm the file has been restored.

Image description

Step 5: Configure blob versioning
It’s important to keep track of the different website product document versions.

  • Go to the Overview blade of the storage account.

  • In the Properties section, locate the Blob service section.

  • Select the Versioning setting.

Image description

  • Ensure the Enable versioning for blobs checkbox is checked.

  • Notice your options to keep all versions or delete versions after.

  • Don’t forget to Save your changes.

Image description

As you have time, experiment with restoring previous blob versions.

  • Upload another version of your container file. This overwrites your existing file.

  • Your previous file version is listed on Show deleted blobs page.

Conclusion

By carefully choosing the right Azure storage solution for your website and taking advantage of its scalability and reliability, you can ensure a smooth and efficient user experience.

Don't forget to like, comment, share and subscribe!

Top comments (2)

Collapse
 
realcloudprojects profile image
Skill Schule

Good Job!

Collapse
 
onyemachi_doris profile image
Onyemachi Doris

Thank you