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


  • PHP futtatókörnyezet kialakítása IIS 7 webszerver felett

    Dávid Zoltán A webes világban a PHP az egyik legelterjedtebb szerveroldali programozási nyelv. A PHP fejlesztők jelentős része Windowson dolgozik, mégis alig látunk Windows Serveren hosztolt PHP-alapú oldalakat. A jelenség egyik oka a PHP Windowson való futtatásának eddig alacsony hatékonysága illetve megbízhatatlansága. Ennek az áldatlan állapotnak az IIS 7.0 és a FastCGI modul megjelenésével remélhetőleg vége. Tovább »
  • Karácsonyi ASP.NET vezérlő

    Dávid Zoltán Először is szeretnék a teljes szerkesztőség nevében mindenkinek útólag is Békés Boldog Karácsonyt és előre is Sikeres, Nyugodt Új Évet kívánni. 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