Blob storage e hosting di siti statici

Questo post è parte di una serie su windows azure.

Le funzionalità messe a disposizione da Windows Azure sono decisamente tante: Web Site, Cloud Services, Storage…Alcuni scenari in cui trarre vantaggio da queste funzionalità, però, non sono così evidenti come altri e bisogna utilizzare un po’ di immaginazione per definirne alcuni un po’ “insoliti”. Uno di questi, oggetto di questo post, è la possibilità di sfruttare il Windows Azure Blob Storage come sistema di hosting per siti dai contenuti statici.

Dato che un sito statico non ha bisogno di un data store e, per esempio, di un worker role per il processing in background delle operazioni, la scelta di un web role o di un web site, potrebbe essere “sovradimensionata”. Dato che i blob contenuti in un container pubblico sono accessibili attraverso delle semplici API (GET over HTTP), il gioco è fatto. Quello che possiamo esporre, non sono solo dei semplici file html, ma anche immagini, pdf, javascript…

Nulla di più facile insomma…una delle poche cose di cui tenere conto è il setup del ContentType di ogni blob, in modo che il browser sappia come gestire la risorsa.

Con la seguente funzione ricorsiva è possibile caricare su un particolare container la struttura, più o meno complessa, di un sito, partendo dalla root e mantenendo la gerarchia che caratterizza la struttura del sito stesso, simulando, come abbiamo visto nel post precedente, una gerarchia simil-filesystem, tramite l’utilizzo di “directory vistuali”.


Il risultato di tutto ciò è, per esempio, la disponibilità del sito di codiceplastico hostato dal Windows Azure Blob Storage.