dinsdag 20 december 2011

Technische oplossingen begrijpen: De web-server uitgelegd


“Apollo heeft het ver gebracht: vroeger een God, nu een ruimte capsule”
                                                                                                            - Jerry Lewis
Een ware faciliteit zijn web-servers; het gaat niet om de kant-en-klare machines waar websites op geplaatst worden, maar het programma dat verantwoordelijk is dat al die sprakelende pagina’s verstuurd naar onze browsers. Het vervelende van de ICT-branche blijft het jargon; het woord ‘web’ en ‘server’ worden voor veel doeleinden gebruikt en misbruikt, het is dan ook niet raar dat veel niet-techneuten door de bomen het bos niet meer zien. Tijd voor wat ontbossing!
Als programma is een web-server ontworpen als faciliteit. De kerntaak van dit programma is het overdragen van bestanden over een netwerk (zoals het internet), wanneer een gebruiker hierom vraagt. Omdat de web-server zich niet bemoeid in essentie, met de inhoud van deze bestanden, valt deze onder de classificatie van een faciliteit. Hoe deze overdracht precies gaat, zou nu alleen maar verwarring opleveren, we houden het eerst makkelijk.
De bestanden die een web-server verstuurd zijn tekst documenten, die informatie bevatten voor ‘browsers’ (programma’s waarmee we op Internet surfen, zoals Internet Explorer, Mozilla Firefox of Google Chrome). Het programma werkt als een service die wacht op een ‘verzoek’ van een browser en spuugt daar het bijhorende bestand terug. Deze overdracht gaat heel snel waardoor vele gebruikers snel voorzien kunnen worden van de informatie die ze opvragen. Een grijpmachine van de kermis zou een redelijke analogie zijn van de technische mechaniek; de machine is de webserver, de prijzen zijn de bestanden, de munt inworp is het verzoek. Pas wanneer er ‘gegrepen’ is kan het volgende verzoek plaatsvinden en begint het hele proces opnieuw.
Omdat de webserver een ‘domme’ mechaniek heeft als sterkste voordeel, zit het nadeel in dat mensen nooit tevreden zijn. In de loop der jaren hebben knappe koppen programma’s en conventies toegevoegd om de webserver wat meer intelligentie te geven. Zo zijn er speciale programmeeromgevingen ontworpen om de bestanden die de web-server uitspuugt, net ervoor te bewerken. Praktisch zijn deze truukjes voor oplossingen zoals een ‘zoekmachine’: de zoekopdracht verandert elke keer, maar het originele bestand van de pagina niet. Wel wordt er ‘dynamisch’ informatie toegevoegd aan de hand van argumenten in het verzoek (de zoekopdracht).
De bestanden zijn documenten: ze bevatten inhoudelijke informatie en de richtlijnen om deze informatie weer te geven. De web-browser bepaalt echter tot hoe ver zij deze richtlijnen volgen, vandaar dat verschillende browsers dezelfde pagina soms anders weergeven dan we zouden verwachten. Deze documenten volgen vaak een conventie: HTML (Hyper Text Markup Language) is een populaire conventie voor de opmaak.
Omdat de web-server bestanden beheerd, zal deze ook een methode nodig hebben om iedere individueel bestand te benaderen. De webserver werkt over een netwerk, vandaar dat deze methode in de vorm van een ‘voetpad’ moet worden verwerkt. Zonder bekende eindbestemming zou de webserver nooit kunnen raden welk bestand er gevraagd wordt. Dit ‘voetpad’ heet een URL (Uniform Resource Locator). Wanneer de webserver een verzoek ontvangt met een URL, kan deze het bestand ophalen. De webserver wandelt het ‘voetpad’ af en eindigt bij de eindbestemming: het bestand met de nodige informatie.
Web-servers worden daarom gebruikt voor vele hedendaagse applicaties; ze worden uitgerust met speciale programma’s om informatie dynamisch weer te geven. Dankzij de opmaak-conventies hoeven ze maar een enkel bestand aan te passen om de weergave actueel te maken voor alle gebruikers, de browser hoeft alleen maar de pagina te ‘verversen’.
Applicaties die onderliggend gebruik maken van een webserver heten dan ook web applicaties. Populaire webservers zijn onder andere Apache™ web server, IIS™, Lighttpd™. Populaire programmeeromgevingen voor webservers zijn bijvoorbeeld PHP, ASP en Ruby.

Meer lezen over Informatie Technologie? Klik hier voor de inhoudsopgave voor alle artikelen!
©SamRain
Webserver

Geen opmerkingen:

Een reactie posten