Elnézve az Azure árakat, egy weboldalnyi adat tárolása az azure storageben gyakorlatilag ingyen van. Ha ehhez hozzáveszem, hogy az azure storage tartalma HTTP-n keresztül elérhető, és hogy nem kell aggódni a rendelkezésreállás és a sávszélesség miatt, akkor egyből arra gondolok, hogy statikus weboldalakat azure storageba tenni jó ötlet. Nézzük mik a lehetséges buktatók, és megoldásaik.
Eddig két gondba ütköztem bele:
- az azure storageba tett dolgok URL-je igen-igen ronda. Valami ilyesmi: krixkrax.blob.core.windows.net/index.html. Ezt megjegyezni nehéz és nem SEO barát.
- például chromeból megnyitva a fenti URL-t, a böngésző nem megjeleníti, hanem letölti az index.html-t.
Értelmes URL azure storagehoz
A legjobb megoldás, amit eddig találtam, hogy egy szép és saját domain (például www.enyem.hu) CNAME rekordját ráállítom a ronda krixkrax.blob.core.windows.net-re.
Innentől kezdve a böngészőbe beírt http://www.enyem.hu kérések a krixkrax.blob.core.windows.net-re futnak be. Viszont onnan semmilyen értelmes választ nem kapunk. Ennek oka, hogy az azure csak az általa ellenőrzött szép domain – csúnya storage url összerendeléseket hajlandó figyelembe venni. Egyetlen dolgot tehetünk: jelentkezzünk be az azure admin felületre, és adjuk meg a storagenál, hogy mostantól a www.enyem.hu urlre érkező kéréseket is szolgálja ki. Erre az azure csak akkor lesz hajlandó, ha bizonyítjuk, hogy mienk a domain: ad egy random.www.enyem.hu domain nevet, és megkér, hogy ennek a CNAME rekordját állítsuk verify.azure.com-ra. Tegyük meg, és az azure adminfelületen nyomjuk meg a ‘Validate’ gombot.
Ezután a www.enyem.hu a krixkrax.blob.core.windows.net-ről szolgálódik ki.
A weblapok nem megjelennek, hanem letöltődnek gond
Ennek oka, az, hogy a azure storageban a default MIME type ‘application/octet-stream’. Ezért azok a böngészők, akik nem kiterjesztés, hanem MIME type alapján döntenek, az ilyen weboldalakat le akarják tölteni, ahelyett, hogy megjelenítenék. A megoldás nagyon egyszerű: állítsuk az index.html MIME type-ját ‘text/html’-re. Azt, hogy ezt ki hogyan csinálja, az eszközfüggő. Én a CloudXplorert használom:
