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: ,


  • Konfig módosítás telepítőből

    Balássy György (MS RD, ASP.NET MVP, MCTS) Kár szépíteni a dolgot, mindenki utál telepítőt írni az alkalmazásához. A telepítő készítés igen komoly versenyben van a doksi írással, vagy a projekt vezetői teendők közül az erőforrás- és határidő becsléssel, ha azt nézzük, egy átlag fejlesztő mennyire undorodik tőle. Tovább »
  • SQL backup dátum formázással parancssorból

    Balássy György (MS RD, ASP.NET MVP, MCTS) Szervert frissítettünk és úgy határoztunk, hogy nem csak a webszervert cseréljük le IIS7-re, hanem az adatbázis kiszolgálót is SQL Server 2008. Ezek után nem volt mit tenni, a backup szkripteket is illett migrálni, hiszen az osql.exe már egy ideje feketelistán van. 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