1 Tartalom A HTTP protokoll 1. A HTTP protokoll Címzés a weben Az URL kódolás (URL encoding) A MIME típusok A TCP/IP protokoll szerepe a HTTP alatt A ...
A HTTP protokoll Tartalom 1. A HTTP protokoll ............................................................................................................................1 1.1. Címzés a weben........................................................................................................................1 1.1.1. Az URL kódolás (URL encoding)....................................................................................2 1.2. A MIME típusok......................................................................................................................3 1.3. A TCP/IP protokoll szerepe a HTTP alatt...............................................................................4 1.4. A HTTP protokoll metódusai...................................................................................................5 1.5. Fontosabb HTTP fejlécek.........................................................................................................7 Általános fejlécek .............................................................................................................8 A kérés fejlécei..................................................................................................................8 A válasz fejlécei ..............................................................................................................10 Entitás fejlécek ...............................................................................................................11 1.6. A HTTP status kódok.............................................................................................................11 1.7. A web szerver CGI változói ...................................................................................................12 1.8. A sütik (Cookie)......................................................................................................................13
1. A HTTP protokoll 1.1. Címzés a weben A weben való címzés erőforrások (web resources) elérést biztosítja. Ez standardizálva van, a standardokat az IETF (Internet Engineering Task Force) publikálja (RFC1630, RFC1738). A standard egy URI (Unified Resource Identifier = egységes forrás azonosító) megnevezésű címet definiál, amely lehet: URL (Unified Resource Locator) az erőforrás hely szerint van azonosítva. URN (Unified Resource Name) az erőforrás név szerint azonosítódik. Az utóbbit ritkábban használjuk, mert azt feltételezi, hogy rendelkezünk egy olyan katalógussal, amely egy névhez fizikai elérhetőséget (valamilyen gépek által elérhető címet) rendel. Az URL A weben található tartalmak, objektumok hely szerinti eléréséhez egy egységes címzési módot határoztak meg. Ez könnyen és biztonságosan értelmezhető automaták és ember által is. Neve: egységes forrásazonosító. Uniform Resource Locator, URL: “a compact string representation for a resource available via the Internet” . (rfc1738)
Felépítése: <séma>:<séma specifikus-rész>
1
Sapientia Egyetem, Marosvásárhely, SzLZs
Webtechnológia előadás, 2009/10-II. félév
Csak nyomtatható US-ASCII karakterekből épül fel, 20h-7Eh-ig, A 00-1F és 7F kontroll karaktereket kódolni kell. A séma valamilyen eléréshez szükséges mechanizmust jelent, többnyire egy protokollt. Ilyenek az ftp:, nntp:, http: . A séma specifikus rész szintaxisa: //<user>:<password>@:<port>/
Jelentésük: user:password felhasználó, jelszó host: a számítógép teljes Internet neve, FQDN (Fully Qualified Domain Name), vagy egy IP cím (4 számjegy pontokkal elválasztva). pl.: http://ms.sapientia.ro:80/index.html http://193.16.218.66/
port: a hálózati kapcsolat szerver oldali TCP port száma. A legtöbb sémának létezik implicit port száma, de mást is lehet helyette használni. Pl.: 80, 23, 443, 22, 21-es portok. url-path: sémán belüli elérési út. A / nem része az elérési útnak. Ez pl. a http: séma esetében egy valódi vagy egy virtuális könyvtár (címzés) a webszerveren. A HTTP protokoll esetében ennél több információt is tartalmaz. A http: URL teljes alakja: //<user>:<password>@:<port>/?#
query-string: ennek a sztringnek a segítségével jutnak el a címzett forráshoz a paraméterek. Névérték párokat tartalmaz. http://ms.sapientia.ro?szekcio=1&oldal=35
fragment: a címzett forráson belül jelöl ki egy megjelenítési pontot, általában a böngésző használja fel, ettől a ponttól kezdi a megjelenítést. http://ms.sapientia.ro?szekcio=1&oldal=35#bekezdes
A kijelölt megjelenítési pontot, amelyet HTML-ben kódolunk anchor-nak nevezzük, a HTML kódja: Itt a bekezdés.
1.1.1. Az URL kódolás (URL encoding) Az URL-ben előforduló speciális karaktereket kódolni kell. Ezek az alábbiak:
2
Sapientia Egyetem, Marosvásárhely, SzLZs
Webtechnológia előadás, 2009/10-II. félév
-kontroll karakterek ASCII 00h-1Fh és 7Fh -8 bites karakterek 80h-8Fh -Az URL speciális karakterei (ha előfordulnak a nevekben) ; / ? : @ & = + $ -elválasztó karakterek: < > # % " -Más karakterek, amelyek veszélyeztetik a biztonságot, mert más protokollokban jelentéssel bírnak: { } | \ ^ [ ] `
-a szóköz A használható karakterek: a-z
A-Z
0-9
- _ . ! ~ * ' ( )
A kódolandó karaktereket egy % jellel és egy kétjegyű hexadecimális számmal kódolunk. Pl.: %2E