Apache, SSI ja esiprosessointi

Luentotaltiointi

Ongelmia videon katselussa?

Opiskellaan Apachen ominaisuuksia tekemällä edelleenohjaus, salasanasuojaus, monikielinen etusivu ja tutustutaan SSI:hin. Lisäksi kokeillaan esiprosessointia WML:n ja XSLT:n avulla.

Kaikki tässä demossa käsiteltävät asiat toimivat vain Apache-www-palvelimissa eli www.cc.jyu.fi- tai people.cc.jyu.fi-koneissa. www.ad.jyu.fi on Microsoft IIS -www-palvelin, jossa asiat tehdään eri tavalla.

Muuta sivuston sisältävän hakemiston nimeksi nanonano. Jos et vielä ole kopioinut koko Nanonanon sivustoa V:-asemalta atk-keskuksen www-palvelimelle (www.cc.jyu.fi) niin tee se nyt.

Edelleenohjaus

Edelleenohjaus -mallivideo

Monesti käy niin että dokumentit muuttavat paikkaansa ja saattaa olla hyvin vaivalloista muuttaa kaikkia niihin osoittavia linkkejä. Muiden tekemien linkkien muuttaminen on mahdotonta. Tällöin tulee ratkaisuksi edelleenohjaus jolla selain saadaan kulkeutumaan automaattisesti uuteen osoitteeseen.

Salasanasuojaus

Suojaus salasanalla -mallivideo

Yksittäinen kansio on helppo suojata salasanalla.

Monikielisyys

Monikielisyys -mallivideo

HTTP-protokolla ja Apache-WWW-palvelin tukevat suoraan automaattista kielenvalintamekanismia, joka palauttaa selaimelle oikeankielisen dokumentin selaimen asetuksien mukaan. Selaimien kieliasetuksia voi säätää suoraan niiden asetuksista ja voi esim. laittaa kielet mieleiseensä järjestykseen.

Muutetaan Nanonanon sivuston etusivu monikieliseksi seuraavasti:

Tarkemmin Apachen automaattisesti kielivalinnasta voi lukea dokumentista Apache Content Negotiation.

SSI (Server Side Includes)

SSI -mallivideo

SSI-komennoilla voi lisätä WWW-sivuihin dynaamista toiminnallisuutta. WWW-palvelin tulkitsee xhtml-dokumenttiin upotetut komennot ennen sivun lähettämistä selaimelle.

Esiprosessointi XSLT:llä

Esiprosessointi XSLT:llä -mallivideo

SSI:n ongelmana on palvelimen resurssien turha hukkaaminen. Joka kerta, kun selain pyytää palvelimelta sivua, käy palvelin sivun läpi ja toteuttaa siinä olevat SSI-komennot ennen sivun lähettämistä selaimelle. Tämä on huomattavan raskasta verrattuna yksinkertaiseen sivun lähettämiseen. SSI:tä vastaava toiminta saataisiin toteutettua myös esiprosessoimalla.

Esiprosessointi tarkoittaa seuraavia vaiheita:

  1. Kirjoitetaan kaikilla sivuilla käytettävä dokumenttipohja eli template, joka sisältää esim. kaikille sivuille yhteisen navigointilinkistön
  2. Kirjoitetaan halutun yksittäisen dokumentin varsinainen sisältö
  3. Yhdistetään sisältö ja template valmiiksi sivuksi

XSLT eli eXtensible Stylesheet Language Transformations tarkoittaa XML-sovellusta jolla voidaan määrätä miten tietty XML-tiedosto (esim. XHTML-dokumentti) muunnetaan toiseen muotoon (esim. PDF, tavallinen teksti).

WML

Esiprosessointi WML:llä -mallivideo

WML (Website Meta Language) on erityisesti WWW-sivujen esiprosessointiin kehitetty väline, jonka suurin ongelma on, että WML-komentoja sisältävät tiedostot eivät ole XML-muotoisia, joka voi hieman rajoittaa käytettävissä olevia työkaluja.

SSI, XSL vai WML?

Harjoitustyösivuston ylläpito sujuu hyvin millä tahansa käytetyistä tekniikoista. Tulevaisuuden kannalta eniten tutustumisen arvoinen tekniikka saattaa olla XSL mutta se on myös omalla tavallaan hankalin väline. Helpoimmalla selviää käyttämällä SSI:ta mutta enemmän ylläpitomahdollisuuksia haluavat voivat käyttää WML:ää.

Harjoitustyösivun voi tehdä myös ilman ylläpitotyökaluja, mutta tällöin esimerkiksi toistuvien elementtien, navigointien ja päivitysaikamäärien muuttaminen voi olla työlästä.

Käyttäjien kommentit

Kommentoi tätä sivua Lisää uusi kommentti
Kurssimateriaalien käyttäminen kaupallisiin tarkoituksiin tai opetusmateriaalina ilman lupaa on ehdottomasti kielletty!
http://appro.mit.jyu.fi/www/demot/demo7/
© Antti Ekonoja (anjoekon@jyu.fi) <http://users.jyu.fi/~anjoekon/>
Tommi Lahtonen (tommi.j.lahtonen@jyu.fi) <http://hazor.iki.fi/>
Jukka Mäntylä (jmantyla@iki.fi) <http://www.iki.fi/jmantyla/>
2005-08-16 15:53:41
Informaatioteknologia - Jyväskylän yliopiston IT-tiedekunta ja avoin yliopisto