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


  • AJAX Library: csak egy maradhat

    Balássy György (MS RD, ASP.NET MVP, MCTS) Az elmúlt években drasztikusan megnőtt az igény a webfejlesztésnél a kliens oldali kódolásra, ám mivel ez alapvetően nem egy fejlesztői kéjélmény, újabb és újabb JavaScript keretrendszerek bukkantak fel. A Microsoft is elkészítette a sajátját Microsoft Ajax Library néven és egész szép eredményeket ért el, különösen az Ajax Control Toolkittel integrálódó új verziókban, írtam is róla eleget. A verseny azonban úgy látszik, véget ért, a favorit pedig a jQuery, amelyet mára a nagyobb webhelyek közül minden harmadik használ. Jogosan merül fel ennek fényében a kérdés: mi lesz veled ASP.NET AJAX? Tovább »
  • Hogyan toljunk ki másokkal?

    Balássy György (MS RD, ASP.NET MVP, MCTS) Íme a legújabb tipp arra, hogyan toljunk ki felebarátainkkal: küldjük neki az anyagainkat XPS formátumban ÉS adjunk a fájlnak ékezetes fájlnevet. Míg egy ékezet nélküi fájlt simán megnyitott nálam Vista alatt az IE-be integrálódó XPS viewer, addig egy á.xps vagy egy é.xps fájl így nyílt meg. 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