Kliens/szerver architektúra

Hogyan működik a web?

## A kliens-szerver architektúra működése:

A kliens-szerver egy olyan architektúra, amelyen a kommunikációban résztvevő két fél nem egyenrangú módon vesz részt, hanem dedikált szerepeket (szerver illetve kliens) töltenek be.
A műveleteket jellemzően a kliens kezdeményezi, mégpedig azzal a céllal, hogy valamilyen műveletet vagy lekérdezést végeztessen el a szerverrel. A szerver a kérést megkapva elvégzi a megfelelő lépéseket, majd az eredményt a kliens felé továbbítja. Bár az adatok a kommunikáció során értelemszerűen mindkét irányban áramolhatnak, a műveleteket elvégzését mindig a kliens kezdeményezi, és mindig a szerver hajtja végre - ennek megfordítására nincs mód.

## A feladathoz szükséges architektúra elemei:

- Böngészőprogram: az architektúrában ezt az elemet nevezzük kliensnek, amely kezdeményezi az adatforgalmat.
- Webszerver: az a komponens, ami a kliens kéréseire válaszolva a helyben tárolt forrásanyagot szolgálja ki, jelen esetben Apache HTTP Server
- PHP : html preprocesszor. Ha a webszerver olyan kérést kap, amely PHP-jellegű kódrészleteket is tartalmaz, ezeket a PHP értelmezője fogja feldolgozni, majd az eredményt HTML formátumban átadja a böngészőnek. Mondhatjuk úgy is, hogy ez a HTML nyelv egyfajta "kiterjesztése", sok-sok dinamikus lehetőséget biztosít majd számunkra weblapjaink tervezésekor.
- Weblap forrása: a szerver által szolgáltatott tartalom, például: weboldalak (HTML), képek, PHP kódolt oldalak...
- MySQL szerver: az adatbáziskezelő, amihez képes a PHP kapcsolódni (lehet más SQL szerver is)
- MySQL kiegészítés: a PHP modulja, ami tetszőleges SQL adatbázishoz kapcsolódik. Lehetne ez a felület ODBC, vagy OCI (Oracle kapcsolódási felület) is.