Statikus weboldal elhelyezése Azure BLOB-ban

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:

azure-storage-mime-type-1 azure-storage-mime-type-2



Dávid Zoltán

Dávid Zoltán Mérnök Informatikusként végeztem a BME-n, jelenleg webfejlesztéssel és gépi tanulással foglalkozom.

2011.01.05. 10:07:31 | Permalink | Hozzászólások: 0 | Tárgyszavak: ,


  • Vista SP2 és Windows Server 2008 SP2 CPP

    Balássy György (MS RD, ASP.NET MVP, MCTS) Készül a Vista és a Windows Server 2008 második javítócsomagja, a fejlesztés most érkezett a nyilvános béta fázishoz. Érdemes kicsit előretekinteni, hogy mire is számíthatunk. Tovább »
  • INSERT TABLE generálása

    Dávid Zoltán Gyakran kell valami gyors és akár ronda megoldás olyan egyszerű problémákra, mint minden tárolteljárásra valamilyen jog megadása, vagy hogy SQL INSERT TABLE szkriptet generáljunk minden sorra, ami jelenleg benne van egy megadott táblában. Hogy mikor jó ez? Például amikor fejlesztői környezetből kell átültetni egy tábla teljes tartalmát az élesbe (tesztkörnyezetbe), vagy fordítva. Persze van erre mindenféle adattranszformáló eszköz is, a 10 soros saját szkriptek viszont vagányak és kis problémákra piszok gyorsak. A mai ronda és gyors megoldásunk egy ilyen INSERT TABLE utasításhalmazt generál. SQL szkriptként kell futtatni és SQL szkriptet ad vissza. Tovább »


Írja meg Ön is véleményét!


Hozzászólásokat csak regisztrált, bejelentkezett felhasználóktól tudunk elfogadni!

Hozzászólások