A világháló a kliens (~vevő, vagy ha tetszik felhasználó) – szerver szerkezete körül forog. A géped ugyanis egy kliens („client“) nevű alkalmazást futtat, amely a szervergépen futó szerver („server“) programmal kommunikál. A kliens szoftver általában egy internetes böngésző program, például az Internet Explorer, Netscape Navigator, Mozilla, Firefox. Ezek a böngészők, keresők „beszélgetnek“ a szerver szoftverrel az ún. protokoll nyelvén, amely nem más, mint parancsok-utasítások programozott sora.
Ezek a protokollok segítenek a pontos adattovábbítás és adatátvitel lebonyolításában egészen a keresés megindításától a szerverválaszig.
Természetesen számos protocoll elérhető a neten. Használhatunk HTTP, FTP, Telnet, email-t a internetes böngészőnk segítségével.
Néhány közös internet protokoll
- HTTP (HyperText transfer Protocol): A nagy világháló, azaz a „World Wide Web“ (www) használja weboldalak, lapok, képek, file-ok átvitelére.
- FTP (File Transfer Protocol): ez két gép közötti adatátvitelre alkalmas.
- SMTP (Simple Mail Transport Protocol): természetesen levelezésre használatos.
- Telnet Protocol: internetes telefonalkalmazások protokollegyüttese.
A hálózat egy kapcsolatmentes protokollt alkalmaz, ami annyit jelent, hogy minden egyes kliens-szerver „beszélgetés“, interakció után a kapcsolat megszakad.
Nézzük meg a kliens-szerver kommunikáció 3 lehetséges modelljét!
Modell #1 – Statikus HTML oldalak
A kliens (a böngésző program) lekér egy HTML file-t a szerver programon keresztül a Szervergépről. A szerverszoftver megkeresi, beazonosítja és továbbítja a keresett file-t a kliensnek (azaz az internetes böngészőnknek). A böngészőnk pedig megjeleníti azt a gépünkön. Ebben az esetben a HTML oldal statikus, ami annyit tesz, hogy nem változik, amíg a fejlesztője nem változtat rajta.
Modell #2 – CGI Scripts (CGI kéziratok)
Ez a modell kicsit eltér a CGI alkalmazásoktól. Ez esetben a szervernek több feladata van, mert a CGI program is terheli magát a Szerver gépet.
Ha olyan géppel kerülsz keresésed során kapcsolatban, amin CGI program fut, akkor a keresésed indítása után a szerver program beazonosítja a szükséges CGI programot és minden adatot átad neki a kereséseddel kapcsolatban. A CGI a keresés eredményét a szervernek továbbítja, aki pedig a gépeden lévő internetböngészőnek, majd a szokott módon megjelenik a HTML lap a monitorodon.
Ilyen módon a CGI program egy dinamikus HTML lapot generál, hoz létre, amelynek tartalma természetesen a kereséskor átadott adatoktól függ.
Modell #3 – Szerver oldali scriptelés
A 3. modell is dinamikus választ generál, amelyet a a szerver oldali technológia tesz lehetővé. A szerver oldali technológiának több megoldása ismert.
- Aktív Szerver Oldalak (Active Server Pages – ASP): Microsoft technológia, kiterjesztése tipikusan „.asp“.
- PHP (Hypertext Preprocessor – PHP): Nyílt forrású technológia, kiterjesztése lehet „.php“, „.phtml“ vagy „.php3“ file-ok.
- Java Szerver Oldalak (Java Server Pages): Java kóddal írt „jsp“ formátumok.
- Szerver oldali tartalom (Server Side Includes – SSI): Magában foglal egy apró kódot a HTML oldalban beágyazva. Kiterjesztése tipikusan „.shtml“ file formátum.
Ezekkel a szerver technológiákkal a Web lapok karbantartása lényegesen egyszerűbb lett, különösen a nagyobb Web lapok esetén igaz ez. A fejlesztőnek annyit kell tennie, hogy beágyazza a szerver-oldali nyelvkódot a HTML lapba, ez a kód pedig tolmácsként működik: egy-egy beérező parancs esetén lefordítja mit kell tenni és a válaszként a böngészőnek elküldött végleges HTML képet is ő generálja.
Ez a script kód nyelvezet természetesen a felhasználó számára nem látható, hiszen a szerver a válaszban HTML kódot küld kizárólag.
Ha egy PHP jellegű példát nézünk: egy PHP oldal keresés elindítását követően a szerver PHP-tolmács mechanizmusa együtt dolgozik az egyéb szerver programkombinációkkal. Ez a fordítóprogram feldolgozza a PHP kódokat és egy dinamikus HTML-t hoz létre válaszként, amely a szerveren keresztül a klienshez kerül. A kliens internet böngészője természetesen mit sem sejt a háttérben zajló folyamatokról, a szerver oldali tevékenységekről, hiszen ő csak egy számára értelmezhető HTML kódot kap válaszként, amit aztán megfelelő formává alakítva megjelenít a kliens monitorján.
Remélem érthető és hasznos volt!
Olvasd el a többi érdekes cikkünket is!
Képek forrásai: