26
Инфраструктурата Инфраструктурата на на WWW WWW и и HTTP HTTP Светлин Наков Светлин Наков Национална академия по Национална академия по разработка на софтуер разработка на софтуер academy.devbg.org

Инфраструктурата на WWW и HTTP

Embed Size (px)

DESCRIPTION

Инфраструктурата на WWW и HTTP. Светлин Наков. Национална академия по разработка на софтуер. academy.devbg.org. Съдържание. Какво е WWW? Компоненти на WWW: URL, HTML, HTTP Протоколът HTTP HTTP заявки HTTP отговори Cookies. Какво е WWW?. Представяне на World Wide Web. - PowerPoint PPT Presentation

Citation preview

Page 1: Инфраструктурата на  WWW  и  HTTP

Инфраструктурата Инфраструктурата на на WWW WWW ии HTTP HTTP

Светлин НаковСветлин НаковНационална академия по Национална академия по разработка на софтуерразработка на софтуер

academy.devbg.org

Page 2: Инфраструктурата на  WWW  и  HTTP

СъдържаниеСъдържаниеСъдържаниеСъдържание

1.1. Какво еКакво е WWW? WWW?

2.2. Компоненти на Компоненти на WWW: URL, HTML, WWW: URL, HTML, HTTPHTTP

3.3. Протоколът Протоколът HTTPHTTP

4.4. HTTP HTTP заявкизаявки

5.5. HTTP HTTP отговориотговори

6.6. CookiesCookies

1.1. Какво еКакво е WWW? WWW?

2.2. Компоненти на Компоненти на WWW: URL, HTML, WWW: URL, HTML, HTTPHTTP

3.3. Протоколът Протоколът HTTPHTTP

4.4. HTTP HTTP заявкизаявки

5.5. HTTP HTTP отговориотговори

6.6. CookiesCookies

Page 3: Инфраструктурата на  WWW  и  HTTP

Какво еКакво е WWW? WWW?Представяне на Представяне на World Wide WebWorld Wide Web

Page 4: Инфраструктурата на  WWW  и  HTTP

Какво еКакво е WWW? WWW?Какво еКакво е WWW? WWW?

• WWW = WWW = World Wide WebWorld Wide Web = = Web = УебWeb = Уеб

• Глобално информационно пространство в Глобално информационно пространство в ИнтернетИнтернет

• Услуга в ИнтернетУслуга в Интернет ( (катокато E-mail, DNS, ...) E-mail, DNS, ...)

• Множество документиМножество документи ( (и други ресурсии други ресурси) ) разположени по различни уеб сървъриразположени по различни уеб сървъри

• Достъпни през стандартни протоколи катоДостъпни през стандартни протоколи като HTTP, HTTPS HTTP, HTTPS ии FTP FTP по техния по техния URLURL

• Уеб сървъритеУеб сървърите предоставят уеб съдържаниепредоставят уеб съдържание

• Уеб браузъритеУеб браузърите показват уеб страниципоказват уеб страници

• WWW = WWW = World Wide WebWorld Wide Web = = Web = УебWeb = Уеб

• Глобално информационно пространство в Глобално информационно пространство в ИнтернетИнтернет

• Услуга в ИнтернетУслуга в Интернет ( (катокато E-mail, DNS, ...) E-mail, DNS, ...)

• Множество документиМножество документи ( (и други ресурсии други ресурси) ) разположени по различни уеб сървъриразположени по различни уеб сървъри

• Достъпни през стандартни протоколи катоДостъпни през стандартни протоколи като HTTP, HTTPS HTTP, HTTPS ии FTP FTP по техния по техния URLURL

• Уеб сървъритеУеб сървърите предоставят уеб съдържаниепредоставят уеб съдържание

• Уеб браузъритеУеб браузърите показват уеб страниципоказват уеб страници

Page 5: Инфраструктурата на  WWW  и  HTTP

• Структурни компонентиСтруктурни компоненти

• Internet – Internet – предоставя пренос на данни по предоставя пренос на данни по протоколите протоколите TCP TCP ии HTTP HTTP

• Клиенти (уеб браузъри) Клиенти (уеб браузъри) – – показват уеб показват уеб съдържанието – съдържанието – Internet Explorer, Mozilla, …Internet Explorer, Mozilla, …

• Уеб сървъриУеб сървъри – Apache, IIS, Tomcat – Apache, IIS, Tomcat

• Семантични компонентиСемантични компоненти

• Hyper Text Transfer Protocol (HTTP)Hyper Text Transfer Protocol (HTTP)

• Hyper Text Markup Language (HTML)Hyper Text Markup Language (HTML)

• Uniform Resource Locator (URL) Uniform Resource Locator (URL)

• Uniform Resource Identifiers (URIs)Uniform Resource Identifiers (URIs)

• Структурни компонентиСтруктурни компоненти

• Internet – Internet – предоставя пренос на данни по предоставя пренос на данни по протоколите протоколите TCP TCP ии HTTP HTTP

• Клиенти (уеб браузъри) Клиенти (уеб браузъри) – – показват уеб показват уеб съдържанието – съдържанието – Internet Explorer, Mozilla, …Internet Explorer, Mozilla, …

• Уеб сървъриУеб сървъри – Apache, IIS, Tomcat – Apache, IIS, Tomcat

• Семантични компонентиСемантични компоненти

• Hyper Text Transfer Protocol (HTTP)Hyper Text Transfer Protocol (HTTP)

• Hyper Text Markup Language (HTML)Hyper Text Markup Language (HTML)

• Uniform Resource Locator (URL) Uniform Resource Locator (URL)

• Uniform Resource Identifiers (URIs)Uniform Resource Identifiers (URIs)

Компоненти на Компоненти на WWWWWWКомпоненти на Компоненти на WWWWWW

Page 6: Инфраструктурата на  WWW  и  HTTP

• КлиентитеКлиентите използват уеб браузър за да използват уеб браузър за да искат ресурси от уеб сървърите по искат ресурси от уеб сървърите по HTTPHTTP

• Ресурсите имат уникален Ресурсите имат уникален URL URL адресадрес

• СървъритеСървърите връщат поискания ресурс връщат поискания ресурс

• Или връщат код и съобщение за грешкаИли връщат код и съобщение за грешка

• Уеб страницитеУеб страниците са ресурси във са ресурси във WWWWWW

• Състоят се от Състоят се от HTML HTML тексттекст, , графикиграфики, , анимациианимации, , звук и други файлове (ресурси)звук и други файлове (ресурси)

• Уеб сайтовеУеб сайтове

• Уеб сайтовете са съвкупности от уеб странициУеб сайтовете са съвкупности от уеб страници

• КлиентитеКлиентите използват уеб браузър за да използват уеб браузър за да искат ресурси от уеб сървърите по искат ресурси от уеб сървърите по HTTPHTTP

• Ресурсите имат уникален Ресурсите имат уникален URL URL адресадрес

• СървъритеСървърите връщат поискания ресурс връщат поискания ресурс

• Или връщат код и съобщение за грешкаИли връщат код и съобщение за грешка

• Уеб страницитеУеб страниците са ресурси във са ресурси във WWWWWW

• Състоят се от Състоят се от HTML HTML тексттекст, , графикиграфики, , анимациианимации, , звук и други файлове (ресурси)звук и други файлове (ресурси)

• Уеб сайтовеУеб сайтове

• Уеб сайтовете са съвкупности от уеб странициУеб сайтовете са съвкупности от уеб страници

Инфраструктура на Инфраструктура на WWWWWWИнфраструктура на Инфраструктура на WWWWWW

Page 7: Инфраструктурата на  WWW  и  HTTP

• Клиентския браузър показва (Клиентския браузър показва (renderrender)) уеб уеб страниците, върнати от уеб сървърастраниците, върнати от уеб сървъра

• Страниците са написани на езика Страниците са написани на езика HTML (Hyper HTML (Hyper Text Markup Language)Text Markup Language)

• Браузърите показват текст, графика и звукБраузърите показват текст, графика и звук

• HTMLHTML страниците могат да съдържат страниците могат да съдържат хипер-хипер-връзкивръзки за навигация към други страници за навигация към други страници

• Цялата система на Цялата система на WWW WWW работи върху работи върху стандартни мрежови протоколистандартни мрежови протоколи

• TCP/IP, DNS, HTTP, …TCP/IP, DNS, HTTP, …

• Протоколът Протоколът HTTP HTTP е фундаментален зае фундаментален за WWW WWW

• Клиентския браузър показва (Клиентския браузър показва (renderrender)) уеб уеб страниците, върнати от уеб сървърастраниците, върнати от уеб сървъра

• Страниците са написани на езика Страниците са написани на езика HTML (Hyper HTML (Hyper Text Markup Language)Text Markup Language)

• Браузърите показват текст, графика и звукБраузърите показват текст, графика и звук

• HTMLHTML страниците могат да съдържат страниците могат да съдържат хипер-хипер-връзкивръзки за навигация към други страници за навигация към други страници

• Цялата система на Цялата система на WWW WWW работи върху работи върху стандартни мрежови протоколистандартни мрежови протоколи

• TCP/IP, DNS, HTTP, …TCP/IP, DNS, HTTP, …

• Протоколът Протоколът HTTP HTTP е фундаментален зае фундаментален за WWW WWW

Инфраструктура на Инфраструктура на WWWWWW (2) (2)Инфраструктура на Инфраструктура на WWWWWW (2) (2)

Page 8: Инфраструктурата на  WWW  и  HTTP

Основни компоненти на Основни компоненти на WWW: URLWWW: URLОсновни компоненти на Основни компоненти на WWW: URLWWW: URL

• Uniform Resource Locator (URL)Uniform Resource Locator (URL)

• Адрес на уникален ресурсАдрес на уникален ресурс във във WWW, WWW, напр.напр.

• Представлява форматиран низПредставлява форматиран низ

• Протокол за достъп до сървъраПротокол за достъп до сървъра (http, ftp, (http, ftp, https, ...)https, ...)

• Име на сървъра или Име на сървъра или IP IP адрес адрес ((например например academy.devbg.orgacademy.devbg.org))

• Път до ресурса и имеПът до ресурса и име ( (напрнапр., index.php)., index.php)

• ПараметриПараметри ( (напр. напр. ?id=27&lang=en)?id=27&lang=en)

• Uniform Resource Locator (URL)Uniform Resource Locator (URL)

• Адрес на уникален ресурсАдрес на уникален ресурс във във WWW, WWW, напр.напр.

• Представлява форматиран низПредставлява форматиран низ

• Протокол за достъп до сървъраПротокол за достъп до сървъра (http, ftp, (http, ftp, https, ...)https, ...)

• Име на сървъра или Име на сървъра или IP IP адрес адрес ((например например academy.devbg.orgacademy.devbg.org))

• Път до ресурса и имеПът до ресурса и име ( (напрнапр., index.php)., index.php)

• ПараметриПараметри ( (напр. напр. ?id=27&lang=en)?id=27&lang=en)

http://academy.devbg.org/index.phphttp://academy.devbg.org/index.php

Page 9: Инфраструктурата на  WWW  и  HTTP

Основни компоненти на Основни компоненти на WWW: HTMLWWW: HTMLОсновни компоненти на Основни компоненти на WWW: HTMLWWW: HTML

• Hyper Text Markup Language (HTML)Hyper Text Markup Language (HTML)

• Форматиран текст с картинки и хипервръзкиФорматиран текст с картинки и хипервръзки

• Интерпретира се и се показва от браузъритеИнтерпретира се и се показва от браузърите

• Лесен за усвояване и използванеЛесен за усвояване и използване

• HTML HTML документите са просто текст и таговедокументите са просто текст и тагове

• Лесно се добавя форматиране на текстаЛесно се добавя форматиране на текста

• Генерира се автоматично с Генерира се автоматично с HTMLHTML редактори редактори

• Уеб страницаУеб страница

• HTML HTML файлфайл, , множество картинки и други множество картинки и други ресурси (съвкупност от файлове)ресурси (съвкупност от файлове)

• Hyper Text Markup Language (HTML)Hyper Text Markup Language (HTML)

• Форматиран текст с картинки и хипервръзкиФорматиран текст с картинки и хипервръзки

• Интерпретира се и се показва от браузъритеИнтерпретира се и се показва от браузърите

• Лесен за усвояване и използванеЛесен за усвояване и използване

• HTML HTML документите са просто текст и таговедокументите са просто текст и тагове

• Лесно се добавя форматиране на текстаЛесно се добавя форматиране на текста

• Генерира се автоматично с Генерира се автоматично с HTMLHTML редактори редактори

• Уеб страницаУеб страница

• HTML HTML файлфайл, , множество картинки и други множество картинки и други ресурси (съвкупност от файлове)ресурси (съвкупност от файлове)

Page 10: Инфраструктурата на  WWW  и  HTTP

HTML – HTML – примерпримерHTML – HTML – примерпример

<html><html> <head><title>Example<head><title>Example HTML HTML</title></head></title></head> <body><body> <h1>Heading 1</h1><h1>Heading 1</h1> <h2>Sub heading 2</h2><h2>Sub heading 2</h2> <h3>Sub heading 3</h3><h3>Sub heading 3</h3> <p>This is my first paragraph</p><p>This is my first paragraph</p> <p>This is my second paragraph</p><p>This is my second paragraph</p> <a href="http://academy.devbg.org"><img<a href="http://academy.devbg.org"><img src="NASD-logo.png" border="0"></a>src="NASD-logo.png" border="0"></a> <div align="center"<div align="center" style="background:skyblue">style="background:skyblue"> This is a div</div>This is a div</div> </body></body></html></html>

Page 11: Инфраструктурата на  WWW  и  HTTP

HTML – HTML – примерпримерHTML – HTML – примерпример

<html><html> <head><title>Example<head><title>Example HTML HTML</title></head></title></head> <body><body> <h1>Heading 1</h1><h1>Heading 1</h1> <h2>Sub heading 2</h2><h2>Sub heading 2</h2> <h3>Sub heading 3</h3><h3>Sub heading 3</h3> <p>This is my first paragraph</p><p>This is my first paragraph</p> <p>This is my second paragraph</p><p>This is my second paragraph</p> <a href="http://academy.devbg.org"><img<a href="http://academy.devbg.org"><img src="NASD-logo.png" border="0"></a>src="NASD-logo.png" border="0"></a> <div align="center"<div align="center" style="background:skyblue">style="background:skyblue"> This is a div</div>This is a div</div> </body></body></html></html>

Page 12: Инфраструктурата на  WWW  и  HTTP

Основни компоненти на Основни компоненти на WWW: HTTPWWW: HTTPОсновни компоненти на Основни компоненти на WWW: HTTPWWW: HTTP

• Hyper Text Transfer Protocol (HTTP)Hyper Text Transfer Protocol (HTTP)

• Протокол за пренос на уеб ресурси Протокол за пренос на уеб ресурси между уеб сървър и уеб клиентмежду уеб сървър и уеб клиент

• Важни свойства на Важни свойства на HTTPHTTP

• Модел “заявка – отговор”Модел “заявка – отговор”

• Използва адресиране чрезИзползва адресиране чрез URL URL

• Не поддържа състояние (Не поддържа състояние (stateless)stateless)

• Обменя ресурси и метаданни за тяхОбменя ресурси и метаданни за тях

• Текстов форматТекстов формат

• Hyper Text Transfer Protocol (HTTP)Hyper Text Transfer Protocol (HTTP)

• Протокол за пренос на уеб ресурси Протокол за пренос на уеб ресурси между уеб сървър и уеб клиентмежду уеб сървър и уеб клиент

• Важни свойства на Важни свойства на HTTPHTTP

• Модел “заявка – отговор”Модел “заявка – отговор”

• Използва адресиране чрезИзползва адресиране чрез URL URL

• Не поддържа състояние (Не поддържа състояние (stateless)stateless)

• Обменя ресурси и метаданни за тяхОбменя ресурси и метаданни за тях

• Текстов форматТекстов формат

Page 13: Инфраструктурата на  WWW  и  HTTP

Протоколът Протоколът HTTPHTTPКак Как HTTP HTTP работиработи??

Page 14: Инфраструктурата на  WWW  и  HTTP

HTTP: HTTP: заявки и отговоризаявки и отговориHTTP: HTTP: заявки и отговоризаявки и отговори

• Клиентско приложениеКлиентско приложение

• Например уеб браузърНапример уеб браузър

• Иска ресурсИска ресурс

• Извиква услугаИзвиква услуга

• Клиентско приложениеКлиентско приложение

• Например уеб браузърНапример уеб браузър

• Иска ресурсИска ресурс

• Извиква услугаИзвиква услуга

• Сървърно приложениеСървърно приложение

• Уеб сървърУеб сървър

• Връща поискан ресурсВръща поискан ресурс

• Предоставя услугаПредоставя услуга

• Сървърно приложениеСървърно приложение

• Уеб сървърУеб сървър

• Връща поискан ресурсВръща поискан ресурс

• Предоставя услугаПредоставя услуга

GET /index.htmlGET /index.html

"Welcome to our"Welcome to ourWeb site!"Web site!"

Page 15: Инфраструктурата на  WWW  и  HTTP

GET /courses/archive/spring06/cos461/ HTTP/1.1GET /courses/archive/spring06/cos461/ HTTP/1.1Host: www.cs.princeton.eduHost: www.cs.princeton.eduUser-Agent: Mozilla/4.03User-Agent: Mozilla/4.03<CRLF><CRLF>

ПримерПример: Hyper Text : Hyper Text Transfer ProtocolTransfer ProtocolПримерПример: Hyper Text : Hyper Text Transfer ProtocolTransfer Protocol

HTTP/1.1 200 OKHTTP/1.1 200 OKDate: Mon, 6 Feb 2006 13:09:03 GMTDate: Mon, 6 Feb 2006 13:09:03 GMTServer: Netscape-Enterprise/3.5.1Server: Netscape-Enterprise/3.5.1Last-Modified: Mon, 6 Feb 2006 11:12:23 GMT+2Last-Modified: Mon, 6 Feb 2006 11:12:23 GMT+2Content-Length: 54Content-Length: 54<CRLF><CRLF><html><title>Hello</title><html><title>Hello</title>Welcome to our site</html>Welcome to our site</html>

HTTP HTTP заявказаявкаHTTP HTTP заявказаявка

HTTP HTTP отговоротговорHTTP HTTP отговоротговор

Празният ред Празният ред маркира края на маркира края на

хедъра на заявкатахедъра на заявката

Празният ред Празният ред маркира края на маркира края на

хедъра на заявкатахедъра на заявката

Празният ред Празният ред маркира края на маркира края на

хедъра на отговорахедъра на отговора

Празният ред Празният ред маркира края на маркира края на

хедъра на отговорахедъра на отговора

Page 16: Инфраструктурата на  WWW  и  HTTP

HTTP HTTP заявкизаявкиHTTP HTTP заявкизаявки

• HTTP HTTP заявката на клиента се състои от:заявката на клиента се състои от:

• Ред на заявката (Ред на заявката (request line)request line)• Метод на заявкатаМетод на заявката (GET, POST, HEAD, PUT, ...), (GET, POST, HEAD, PUT, ...),

ресурс и версия на ресурс и версия на HTTP HTTP протоколапротокола

• Хедъри на заявкатаХедъри на заявката• Предоставя различни параметри и настройкиПредоставя различни параметри и настройки

• ТялоТяло• Съдържа данни, може да е празноСъдържа данни, може да е празно

• HTTP HTTP заявката на клиента се състои от:заявката на клиента се състои от:

• Ред на заявката (Ред на заявката (request line)request line)• Метод на заявкатаМетод на заявката (GET, POST, HEAD, PUT, ...), (GET, POST, HEAD, PUT, ...),

ресурс и версия на ресурс и версия на HTTP HTTP протоколапротокола

• Хедъри на заявкатаХедъри на заявката• Предоставя различни параметри и настройкиПредоставя различни параметри и настройки

• ТялоТяло• Съдържа данни, може да е празноСъдържа данни, може да е празно

<request method> <resource> HTTP/<version><request method> <resource> HTTP/<version><headers><headers><empty line><empty line><body><body>

Page 17: Инфраструктурата на  WWW  и  HTTP

HTTP GET HTTP GET заявказаявка – – примерпримерHTTP GET HTTP GET заявказаявка – – примерпример

GET /InetJava-2002-program.html HTTP/1.1GET /InetJava-2002-program.html HTTP/1.1Host: inetjava.sourceforge.netHost: inetjava.sourceforge.netAccept: */*Accept: */*Accept-Language: bgAccept-Language: bgAccept-Encoding: gzip, deflateAccept-Encoding: gzip, deflateUser-Agent: Mozilla/4.0(compatible;MSIE 6.0; User-Agent: Mozilla/4.0(compatible;MSIE 6.0; Windows NT 5.0)Windows NT 5.0)Connection: Keep-AliveConnection: Keep-AliveCache-Control: no-cacheCache-Control: no-cache<<CRLFCRLF>>

Пример за Пример за HTTP GET HTTP GET заявказаявкаПример за Пример за HTTP GET HTTP GET заявказаявка

Page 18: Инфраструктурата на  WWW  и  HTTP

HTTP POST HTTP POST заявказаявка – – примерпримерHTTP POST HTTP POST заявказаявка – – примерпример

POST /webmail/login.phtml HTTP/1.1POST /webmail/login.phtml HTTP/1.1Host: www.abv.bgHost: www.abv.bgAccept: */*Accept: */*Accept-Language: bgAccept-Language: bgAccept-Encoding: gzip, deflateAccept-Encoding: gzip, deflateUser-Agent: Mozilla/4.0(compatible;MSIE 6.0; User-Agent: Mozilla/4.0(compatible;MSIE 6.0; Windows NT 5.0)Windows NT 5.0)Connection: Keep-AliveConnection: Keep-AliveCache-Control: no-cacheCache-Control: no-cacheContent-Length: 59Content-Length: 59<CRLF><CRLF>LOGIN_USER=borisLOGIN_USER=borisDOMAIN_NAME=abv.bgDOMAIN_NAME=abv.bgLOGIN_PASS=tajnamajnaLOGIN_PASS=tajnamajna<CRLF><CRLF>

Пример за Пример за HTTP POST HTTP POST заявказаявкаПример за Пример за HTTP POST HTTP POST заявказаявка

Page 19: Инфраструктурата на  WWW  и  HTTP

HTTP HTTP условнаусловна GET GET заявказаявка – – примерпримерHTTP HTTP условнаусловна GET GET заявказаявка – – примерпример

GET /courses/archive/spring06/cos461/ HTTP/1.1GET /courses/archive/spring06/cos461/ HTTP/1.1Host: www.cs.princeton.eduHost: www.cs.princeton.eduUser-Agent: Mozilla/4.03User-Agent: Mozilla/4.03If-Modified-Since: Mon, 6 Feb 2006 11:12:23 GMTIf-Modified-Since: Mon, 6 Feb 2006 11:12:23 GMT<CRLF><CRLF>

Пример за Пример за HTTP HTTP условнаусловна GET GET заявказаявкаПример за Пример за HTTP HTTP условнаусловна GET GET заявказаявка

• Връща ресурса само ако е бил Връща ресурса само ако е бил модифициран на сървърамодифициран на сървъра

• Спестяват се ресурси (чрез кеширане)Спестяват се ресурси (чрез кеширане)• Сървърът връща отговорСървърът връща отговор “304 Not Modified” “304 Not Modified”

ако ресурсът не е променянако ресурсът не е променян

• ИлиИли “200 OK” “200 OK” с последната версия на ресурсас последната версия на ресурса

• Връща ресурса само ако е бил Връща ресурса само ако е бил модифициран на сървърамодифициран на сървъра

• Спестяват се ресурси (чрез кеширане)Спестяват се ресурси (чрез кеширане)• Сървърът връща отговорСървърът връща отговор “304 Not Modified” “304 Not Modified”

ако ресурсът не е променянако ресурсът не е променян

• ИлиИли “200 OK” “200 OK” с последната версия на ресурсас последната версия на ресурса

Page 20: Инфраструктурата на  WWW  и  HTTP

HTTP HTTP отговоротговорHTTP HTTP отговоротговор

• Отговорът на заявката се състои от:Отговорът на заявката се състои от:

• Статус редСтатус ред – – версия на версия на HTTP HTTP протоколапротокола, , статусстатус кодкод, , обяснителен текстобяснителен текст

• Хедъри на отговора Хедъри на отговора – – предоставят предоставят метаданниметаданни

• ТялоТяло – – съдържание на отговорасъдържание на отговора ((поискания ресурспоискания ресурс))

• Отговорът на заявката се състои от:Отговорът на заявката се състои от:

• Статус редСтатус ред – – версия на версия на HTTP HTTP протоколапротокола, , статусстатус кодкод, , обяснителен текстобяснителен текст

• Хедъри на отговора Хедъри на отговора – – предоставят предоставят метаданниметаданни

• ТялоТяло – – съдържание на отговорасъдържание на отговора ((поискания ресурспоискания ресурс))

HTTP/HTTP/<version><version> < <status codestatus code> <> <status textstatus text>><header<headerss>><<empty lineempty line>><<response body - requested resourceresponse body - requested resource>>

Page 21: Инфраструктурата на  WWW  и  HTTP

HTTP HTTP отговоротговор – – примерпримерHTTP HTTP отговоротговор – – примерпример

HTTP/1.1 200 OKHTTP/1.1 200 OKDate: Sat, 10 Aug 2002 16:09:18 GMTDate: Sat, 10 Aug 2002 16:09:18 GMTServer: Apache/1.3.9 (Win32)Server: Apache/1.3.9 (Win32)Accept-Ranges: bytesAccept-Ranges: bytesContent-Length: 73Content-Length: 73Content-Type: text/htmlContent-Type: text/html

<html><html><head> <title> Test </title> </head><head> <title> Test </title> </head> Test HTML page.Test HTML page.</html></html>

Пример за Пример за HTTP HTTP отговор от сървъраотговор от сървъраПример за Пример за HTTP HTTP отговор от сървъраотговор от сървъра

• Уеб сървърът връща поискания ресурс Уеб сървърът връща поискания ресурс заедно с метаданни за негозаедно с метаданни за него

• Уеб сървърът връща поискания ресурс Уеб сървърът връща поискания ресурс заедно с метаданни за негозаедно с метаданни за него

Page 22: Инфраструктурата на  WWW  и  HTTP

HTTP HTTP отговоротговор – – примерпримерHTTP HTTP отговоротговор – – примерпример

HTTP/1.1 404 Not FoundHTTP/1.1 404 Not FoundDate: Sat, 10 Aug 2002 16:20:17 GMTDate: Sat, 10 Aug 2002 16:20:17 GMTServer: Apache/1.3.9 (Win32)Server: Apache/1.3.9 (Win32)Connection: closeConnection: closeContent-Type: text/htmlContent-Type: text/html

<HTML><HEAD><HTML><HEAD><TITLE>404 Not Found</TITLE><TITLE>404 Not Found</TITLE></HEAD><BODY></HEAD><BODY><H1>Not Found</H1><H1>Not Found</H1>The requested URL /img/nakov.gifThe requested URL /img/nakov.gifwas not found on this server.<P>was not found on this server.<P><HR><ADDRESS>Apache/1.3.9<HR><ADDRESS>Apache/1.3.9Server at test Port 80</ADDRESS>Server at test Port 80</ADDRESS></BODY></HTML></BODY></HTML>

Пример за Пример за HTTP HTTP отговор с код на грешка:отговор с код на грешка:Пример за Пример за HTTP HTTP отговор с код на грешка:отговор с код на грешка:

Page 23: Инфраструктурата на  WWW  и  HTTP

Методи на Методи на HTTP HTTP заявкатазаявкатаМетоди на Методи на HTTP HTTP заявкатазаявката

• По-важни методи на По-важни методи на HTTP HTTP заявката:заявката:

• GET: GET: връща ресурс от сървъра, връща ресурс от сървъра, евентуално изпълнява програма или евентуално изпълнява програма или скрипт (при динамично съдържание)скрипт (при динамично съдържание)

• HEAD: HEAD: връща метаданните за даден връща метаданните за даден ресурс (само хедърите на отговора)ресурс (само хедърите на отговора)

• POST: POST: обновява ресурс, изпраща обновява ресурс, изпраща данни за обработка към програма или данни за обработка към програма или скрипт на сървъраскрипт на сървъра

• По-важни методи на По-важни методи на HTTP HTTP заявката:заявката:

• GET: GET: връща ресурс от сървъра, връща ресурс от сървъра, евентуално изпълнява програма или евентуално изпълнява програма или скрипт (при динамично съдържание)скрипт (при динамично съдържание)

• HEAD: HEAD: връща метаданните за даден връща метаданните за даден ресурс (само хедърите на отговора)ресурс (само хедърите на отговора)

• POST: POST: обновява ресурс, изпраща обновява ресурс, изпраща данни за обработка към програма или данни за обработка към програма или скрипт на сървъраскрипт на сървъра

Page 24: Инфраструктурата на  WWW  и  HTTP

HTTP HTTP кодове на отговоракодове на отговораHTTP HTTP кодове на отговоракодове на отговора

• Класове кодове на Класове кодове на HTTP HTTP отговора:отговора:• 1xx: 1xx: информацияинформация ( (напрнапр., “100 Continue”)., “100 Continue”)

• 2xx: 2xx: успехуспех ( (напрнапр., “200 OK”)., “200 OK”)

• 3xx: 3xx: пренасочванепренасочване ( (напрнапр., “304 Not ., “304 Not Modified”, "302 Found")Modified”, "302 Found")

• 4xx: 4xx: грешка при клиентагрешка при клиента ( (напрнапр., “404 Not ., “404 Not Found”)Found”)

• 5xx: 5xx: грешка на сървърагрешка на сървъра ( (напрнапр., “503 ., “503 Service Unavailable”)Service Unavailable”)

• ""302 Found302 Found"" се използва за пренасочване се използва за пренасочване (redirect) (redirect) на уебна уеб браузъра към друг браузъра към друг URLURL

• Класове кодове на Класове кодове на HTTP HTTP отговора:отговора:• 1xx: 1xx: информацияинформация ( (напрнапр., “100 Continue”)., “100 Continue”)

• 2xx: 2xx: успехуспех ( (напрнапр., “200 OK”)., “200 OK”)

• 3xx: 3xx: пренасочванепренасочване ( (напрнапр., “304 Not ., “304 Not Modified”, "302 Found")Modified”, "302 Found")

• 4xx: 4xx: грешка при клиентагрешка при клиента ( (напрнапр., “404 Not ., “404 Not Found”)Found”)

• 5xx: 5xx: грешка на сървърагрешка на сървъра ( (напрнапр., “503 ., “503 Service Unavailable”)Service Unavailable”)

• ""302 Found302 Found"" се използва за пренасочване се използва за пренасочване (redirect) (redirect) на уебна уеб браузъра към друг браузъра към друг URLURL

Page 25: Инфраструктурата на  WWW  и  HTTP

CookiesCookiesCookiesCookies

• CookieCookie (куки) (куки)

• Малък обем данни изпратени от сървъра и Малък обем данни изпратени от сървъра и съхранени локално в уеб браузърасъхранени локално в уеб браузъра

• Включват се в хедъра на бъдещи заявки към Включват се в хедъра на бъдещи заявки към същия уеб сървърсъщия уеб сървър

• CookieCookie (куки) (куки)

• Малък обем данни изпратени от сървъра и Малък обем данни изпратени от сървъра и съхранени локално в уеб браузърасъхранени локално в уеб браузъра

• Включват се в хедъра на бъдещи заявки към Включват се в хедъра на бъдещи заявки към същия уеб сървърсъщия уеб сървър

Заявка

ОтговорSet-Cookie: XYZ

Следваща заявкаCookie: XYZ

Page 26: Инфраструктурата на  WWW  и  HTTP

Инфраструктурата на Инфраструктурата на WWW WWW ии HTTP HTTPИнфраструктурата на Инфраструктурата на WWW WWW ии HTTP HTTP

ВъпросиВъпроси??ВъпросиВъпроси??