Скачать презентацию Мови програмування Лекція 1 Структура курсу Лекції Скачать презентацию Мови програмування Лекція 1 Структура курсу Лекції

Lecture1_MP.ppt

  • Количество слайдов: 52

Мови програмування Лекція 1 Мови програмування Лекція 1

Структура курсу Лекції – 14 год. Лабораторні роботи – 24 год. Залік Структура курсу Лекції – 14 год. Лабораторні роботи – 24 год. Залік

Структура курсу 1. 2. 3. Предмет Web-програмування. Програмування на боці клієнта та сервера. Інструменти Структура курсу 1. 2. 3. Предмет Web-програмування. Програмування на боці клієнта та сервера. Інструменти та технології програмування. HTML. Основні поняття. Приклади. PHP. Синтаксис мови. Технології використання. Приклади програм.

Предмет Web-програмування Основна одиниця веб-розробки – HTMLсторінка. Вона являє собою простий текстовий документ, у Предмет Web-програмування Основна одиниця веб-розробки – HTMLсторінка. Вона являє собою простий текстовий документ, у який включено спеціальні елементи – теги, що описують дані, розміщені на сторінці. Програмування на PHP нерозривно пов’язано з HTML.

Мова HTML – Hyper Text Markup Language – мова розмітки гіпертексту. Основне поняття мови Мова HTML – Hyper Text Markup Language – мова розмітки гіпертексту. Основне поняття мови HTML – елемент. Елементами називаються структури, з яких будується документ на мові HTML. HELLO!

WEB-ТЕХНОЛОГІЇ Web-технології – вся сукупність засобів для організації WWW. Оскільки, в кожному сеансі взаємодіють WEB-ТЕХНОЛОГІЇ Web-технології – вся сукупність засобів для організації WWW. Оскільки, в кожному сеансі взаємодіють дві сторони – сервер та клієнт, Web-технології поділяються на дві групи – технології сторони сервера (server-side) та технології сторони клієнта (client-side). Завдяки Web-технологіям, для користувачів WWW є доступними не тільки статичні документи, але і такі ресурси, як програми чи бази даних.

Характеристики веб-програм l l l Веб-програма отримує запит від клієнта і виконує обчислення, після Характеристики веб-програм l l l Веб-програма отримує запит від клієнта і виконує обчислення, після цього формує вебсторінку і відправляє її клієнту через мережу з використанням протоколу HTTP. Веб-програма может бути клієнтом інших служб, наприклад, бази даних або іншої вебпрограми, розташованої на іншому сервері. Незалежність від операційної системи клієнта

Принцип роботи Інтернету Протокол передачі – набір правил, що дозволяють строго регламентувати передачу даних Принцип роботи Інтернету Протокол передачі – набір правил, що дозволяють строго регламентувати передачу даних та гарантувати, що передача пройде без спотворень. Спрощено, протокол – це набір правил, що дозволяє системам, які взаємодіють у рамках мережі обмінюватися даними у найзручнішій формі. Веб-програмування використовує протокол TCP (Transmission Control Protocol, Протокол управління передачею даних), а точніше протокол HTTP (Hypertext Transfer Protocol, Протокол передачі гіпертексту), що ґрунтується на TCP.

Організація обміну даними в Інтернеті (стек TCP/IP) Машина клієнта Машина сервера Браузер Web-протокол TCP Організація обміну даними в Інтернеті (стек TCP/IP) Машина клієнта Машина сервера Браузер Web-протокол TCP IP IP . . . Фізичний протокол

Протокол TCP/IP l l l Гарантується коректна доставка даних до місця призначення. “Втрачені” фрагменти Протокол TCP/IP l l l Гарантується коректна доставка даних до місця призначення. “Втрачені” фрагменти надсилаються до тих пір, поки вся інформація не буде передана. Інформація, що передається представлена у вигляді потоку, подібно до того, як здійснюється обмін з файлами у більшості операційних систем. Протокол TCP/IР влаштовано так, що він може вибирати оптимальний шлях поширення сигналу між стороною, що передає і приймає, навіть при наявності проміжних комп'ютерів. Вибір ґрунтується на статистичній інформації роботи мережі та так звані таблиці маршрутизації.

Протокол TCP/IP l l При передачі дані розбиваються на фрагменти – пакети, які доставляються Протокол TCP/IP l l При передачі дані розбиваються на фрагменти – пакети, які доставляються до місця призначення окремо. Різні пакети можуть слідувати різними маршрутами в Інтернеті. Приймаюча сторона при виявленні недостачі пакета надсилає запит системі, що передає, щоб та передала його ще раз. Це відбувається непомітно для ПЗ, що експлуатує TCP/IP.

Адресація у мережі IP адреса – чотири восьмирозрядні числа (у діапазоні від 0 до Адресація у мережі IP адреса – чотири восьмирозрядні числа (у діапазоні від 0 до 255), розділені крапками. Деякі IP зарезервовані для службових цілей. Потрібний комп’ютер визначається запитом до “сусідів”, що звертаються до своїх “сусідів” і т. д. Доменна адреса DNS (Domain Name System, служба імен доменів). Світова DNS являє собою базу даних, здатну перетворювати імена машин в їх IP-адреси. www. example. edu. ua Кожне таке поєднання називається доменом N –рівня (ua – домен першого рівня, edu. ua – другого, example. edu. ua третього). У кінці DNS-імені обов’язково стоїть крапка. Браузери дозволяють нам її опускати. Крапка називається доменом нульового рівня чи кореневим доменом. Одній IP-адресі можуть відповідати декілька доменних імен. Завдяки протоколу HTTP веб-сервер встановлений на машині і реагуючий на запит здатний визначити, яке доменне ім’я ввів користувач.

Адресація у мережі Можливий випадок, коли одному і тому ж DNS –імені відповідає декілька Адресація у мережі Можливий випадок, коли одному і тому ж DNS –імені відповідає декілька різних IP-адрес. У такому випадку служба DNS автоматично вибирає той, кий, на її думку, є найближчим до клієнта, чи той котрий давно не використовувався, чи котрий є найменш завантаженим. Приклад: шукаємо www. example. ua. l надсилається запит до кореневого домену (точніше, до програми – DNS- сервера, що запущений на цьому домені), що має ім’я „. ”. Запит містить команду – повернути IP-адресу машини, на якому розташована інформація про домен ua. l після отримання IP-адреси, за нею надсилається аналогічне звернення з проханням визначити адресу, що відповідає домену example всередині домена ua всередині кореневого домену „. ”. l до передостанньої машини надсилається запит на IP-адресу піддомена www у домені example. ua. .

Адресація у мережі З точки зору протоколу IP, машини, підключені до Інтернету, розглядаються як Адресація у мережі З точки зору протоколу IP, машини, підключені до Інтернету, розглядаються як неподільні сутності. Але TCP використовує у своїй роботі інші поняття. Для нього окремою сутністю є процес – програма, запущена десь на комп’ютері в Інтернеті. Програма – файл, що виконується на диску. Процес – програма, яку завантажили у пам’ять і передали їй управління. Саме між процесами, а не між машинами здійснюється обмін даними у термінах протоколу TCP. Нехай у системі виконується програма (Клієнт), яка хоче через Інтернет з’єднатися з іншою програмою (Сервером) на іншій машині. Для цього має виконуватися ряд умов, а саме: l Програми повинні домовитися про те, як вони будуть один одного ідентифікувати l Програма Сервер повинна знаходитися у режимі очікування, що до неї хтось має підключитися

Адресація у мережі Після запуску Сервер повідомляє драйверу TCP, що збирається використовувати для обміну Адресація у мережі Після запуску Сервер повідомляє драйверу TCP, що збирається використовувати для обміну даними з Клієнтом деякий ідентифікатор, чи порт – ціле число у діапазоні від 0 до 65535. TCP реєструє цей запит у своїх внутрішніх таблицях. Якщо потрібний порт зайнято, надходить повідомлення про помилку. Потім Сервер переходить у режим очікування надходження запитів, що приходять на цей порт. Це означає, що будь-який Клієнт, що хоче вступити у „діалог” з Сервером, повинен знати номер його порту. Вважається, що клієнту відомо IP-адресу машини, на якій запущено Сервер та номер порту, який використовує Сервер. Тому, Клієнт надсилає драйверу TCP команду на з’єднання з машиною, розташованою за заданою IP-адресою, з зазначенням потрібного номеру порту.

Адресація у мережі Сервер „відгукується”, тобто надсилає повідомлення про готовність до обміну даними. Інформацію Адресація у мережі Сервер „відгукується”, тобто надсилає повідомлення про готовність до обміну даними. Інформацію про те, який порт буде використовувати Клієнт для прийому повідомлень, надає драйвер TCP на машині Клієнта, який безпосередньо перед установкою з’єднання вибирає незайнятий порт і присвоює його процесу Клієнт. По завершенню обміну повідомленнями (такий процес називається „потрійним рукостисканням”), між Клієнтом та Сервером встановлюється логічний канал зв’язку.

Термінологія Сервер – будь-який окремо взятий комп’ютер у Інтернеті, який дозволяє іншим машинам використовувати Термінологія Сервер – будь-який окремо взятий комп’ютер у Інтернеті, який дозволяє іншим машинам використовувати себе у якості „посередника” при передачі даних. Всі сервери беруть участь у процесі пошуку комп’ютера за IPадресою. Сервер – це саме машина (залізо), а не логічна частина мережі. Він може мати декілька різних IP-адрес (так як і доменних імен). Характеристикою сервера є те, що він використовує один -єдиний стек TCP/IP. Інше означення, сервер – це програма (в термінології TCP – процес), що обслуговує запити клієнтів.

Термінологія Вузол – будь-яка сутність, що має унікальну IP-адресу в Інтернеті. З цієї точки Термінологія Вузол – будь-яка сутність, що має унікальну IP-адресу в Інтернеті. З цієї точки зору Інтернет можна розглядати як множину вузлів, кожен з яких потенційно може зв’язатися з будь-яким іншим. На одній системі може бути розташовано декілька вузлів, якщо вона має декілька IP-адрес. Наприклад, один вузол може займатися тільки доставкою та надсиланням пошти, другий – виключно обслуговуванням WWW, а на третьому працює DNS-сервер. ІР-адреса є основним атрибутом, що визначає вузол.

Термінологія Порт – деяке число, що ідентифікує програму, яка бажає приймати дані з Інтернету. Термінологія Порт – деяке число, що ідентифікує програму, яка бажає приймати дані з Інтернету. Порт – друга складова адресації ТСР. Будь-яка програма, що бажає передати дані іншій, повинна знати номер порту закріпленого за останньою. Зазвичай кожному сервісу призначається фіксований номер порту. Наприклад, Web-серверу виділяється порт з номером 80.

Термінологія Мережевий демон (чи сервіс, чи служба) – це програма, що працює на сервері Термінологія Мережевий демон (чи сервіс, чи служба) – це програма, що працює на сервері та займається обслуговуванням різних користувачів, що можуть до неї підключатися. Іншими словами, мережений демон – це програма-сервер. Хост – поняття, що часто змішується з поняттям вузол. Однак, будь який вузол – це хост, але не кожен хост – вузол. Відмінність полягає у тому, що хост може бути віртуальним. Віртуальний хост – це хост, що не має унікальної ІР-адреси у мережі, але тим не менш, доступний шляхом введення деякої додаткової адреси (наприклад, його DNS-імені).

Термінологія Провайдер – організація, що має декілька модемних входів, до яких можуть підключатися користувачі Термінологія Провайдер – організація, що має декілька модемних входів, до яких можуть підключатися користувачі для доступу до Інтернету. Хостінг-провайдер – це організація, що може створювати хости (віртуальні чи звичайні) в Інтернеті і продавати їх різним клієнтам. Сайт – частина логічного простору на хості, що складається з однієї чи декількох HTMLсторінок, що інколи представляються у вигляді HTML-документів. Сайт – умовний термін, що позначає деякий логічно організований набір сторінок.

Термінологія HTML-документ – текстовий файл, що містить дані у форматі HTML. Сторінка (чи HTML-сторінка) Термінологія HTML-документ – текстовий файл, що містить дані у форматі HTML. Сторінка (чи HTML-сторінка) – мінімальна, така що адресується з Інтернету, одиниця текстової інформації служби World Wide Web, що може бути затребувана у Webсервера та відображена у браузері. Частину сторінок, отримані простим зчитуванням HTML-документу, називають статичними, а сторінки, отримані у результаті запуску програми, - динамічними. Скрипт, сценарій – програма, що запускається на сервері при кожному запиті користувача, яка обробляє дані та генерує HTML-сторінку.

Схема відносин понять Хостинг-провайдер (власник серверів) обслуговує та надає клієнтам сервери (окремі машини), які Схема відносин понять Хостинг-провайдер (власник серверів) обслуговує та надає клієнтам сервери (окремі машини), які містять вузли (що мають окремі IP-адреси). На вузлі розташовано хости, які можуть бути звичайними (мають окрему ІР-адресу) чи віртуальними (мають одну ІР-адресу, але різні імена), та містять сайти (частини хосту), що зберігаються як HTML-документи (файли), інколи доступні як статичні сторінки, а також скрипти (програми, що створюють сторінки), які генерують динамічні сторінки. На вузлі також працюють служби (процеси на сервері), доступні через порт (номер, що ідентифікує процес на вузлі). Провайдер (власник модемного пулу) надає користувачам доступ до Інтернету.

WWW World Wide Web / WWW / Web – одна з найпопулярніших служб Інтернету, WWW World Wide Web / WWW / Web – одна з найпопулярніших служб Інтернету, як і зв’язаний з нею протокол передачі HTTP, підтримують більшість серверів мережі. Вона є популярною, оскільки дозволяє організувати на хостах сайти - склади текстової та будь-якої іншої інформації, яку користувач може переглядати в інтерактивному режимі.

ІСТОРІЯ Сер Тімоті Джон Бернес-Лі – британський вчений, винахідник URI, URL, HTTP, HTML, винахідник ІСТОРІЯ Сер Тімоті Джон Бернес-Лі – британський вчений, винахідник URI, URL, HTTP, HTML, винахідник Всесвітньої павутини (спільно з Робертом Кайо) та діючий голова Консорціуму Всесвітньої павутини.

ІСТОРІЯ У березні 1989 року Бернерс-Лі запропонував розробити систему управління інформацією – проект, відомий ІСТОРІЯ У березні 1989 року Бернерс-Лі запропонував розробити систему управління інформацією – проект, відомий як WWW. Проект передбачав публікацію гіпертекстових документів, зв’язаних між собою гіперпосиланнями, що полегшувало б пошук та консолідацію інформації. Проект павутини призначався для вчених CERN. Для проекту були винайдені ідентифікатори URI (і як частинний випадок URL), протокол HTTP та мова HTML. У рамках проекту Бернерс-Лі написав перший у світі «веб-сервер» та перший гіпертекстовий браузер «World. Wide. Web» . Цей браузер був одночасно й WYSIWYG-редактором (WYSIWYG від What You See Is What You Get, «що бачиш, те і отримаєш» ). Перший у світі веб-сайт Бернерс-Лі створив за адресою http: //info. cern. ch/, зараз він зберігається у архіві. Він з’явився он-лайн 6 серпня 1991 року. На цьому сайті описувалося, що таке Всесвітня павутина, як встановити веб-сервер, як отримати браузер і т. д. Також, цей сайт був першим Інтернет-каталогом, оскільки на ньому підтримувався список посилань на інші сайти.

ІСТОРІЯ 1957 рік - Каліфорнійському університету в Лос-Анджелесі, Стенфордському центру досліджень, Університету штату Юта ІСТОРІЯ 1957 рік - Каліфорнійському університету в Лос-Анджелесі, Стенфордському центру досліджень, Університету штату Юта и Університету штату Каліфорнія в Санта-Барбарі доручено розробити комп’ютерну мережу. Ця мережа отримала назву ARPANET (англ. Advanced Research Projects Agency Network), і в 1969 році з’єднала ці чотири установи. 1 вересня 1969 року – в Каліфорнійському університеті в Лос-Анджелесі встановлено 1 сервер (12 КБ оперативної пам’яті). 1971 рік – перша програми відправки електронної пошти. 1973 рік – до мережі було підключено іноземні організації з Норвегії та Великобританії, через трансатлантичний кабель. 1 січня 1983 рік – мережа перейшла на протокол TCP/IP. 1984 рік – розроблена система DNS (англ. Domain Name System, DNS). 1988 рік – розроблено протокол Internet Relay Chat. 1990 рік – перше підключення до Інтернету за допомогою телефонної лінії.

WWW - World Wide Web – множина незалежних, але взаємозв’язаних серверів. Працюючи з Веб, WWW - World Wide Web – множина незалежних, але взаємозв’язаних серверів. Працюючи з Веб, користувач “переміщується” між серверами, тобто послідовно з’єднується з ними та отримує інформацію, як правило, у вигляді гіпертектсу. Згідно стандарту мови HTML 4. 0, Web – це мережа інформаційних ресурсів, в якій для доступності цих ресурсів використовуються три механізми: 1. Єдина схема назв ресурсів для пошуку їх в Web – URL. 2. Протокол для доступу до ресурсів через Web – HTTP. 3. Гіпертекст для переміщення між ресурсами – HTML.

l URL (Universal Resource Locator, універсальний локатор ресурсу), що забезпечує механізм за яким користувач l URL (Universal Resource Locator, універсальний локатор ресурсу), що забезпечує механізм за яким користувач може посилатися на конкретну адресу всередині вказаного хосту.

URL http: //example. com: 80/path/to/document. html l Протокол – частина URL, що передує імені URL http: //example. com: 80/path/to/document. html l Протокол – частина URL, що передує імені хосту та завершується двома слешами (http: //). Він вказує браузеру, який високорівневий перехід потрібно використовувати для обміну даними з веб-сервером. Зазвичай це HTTP. l Ім’я хосту – ім’я вузла на якому розташовується сторінка до якої звертаються (example. com). Це може бути не тільки доменне ім’я, але й його IP-адреса. l Порт – відразу за іменем хосту через двокрапку може йти (хоча може бути й виключений) номер порту. Історично склалося, що для протоколу HTTP стандартний номер порту – 80 (чи 81). l Шлях до сторінки – остання частина рядка адреси (/path/to/document. html).

Інтерфейс CGI (Common Gateway Interface, Загальний шлюзовий інтерфейс) – це набір правил та домовленостей, Інтерфейс CGI (Common Gateway Interface, Загальний шлюзовий інтерфейс) – це набір правил та домовленостей, яких повинні дотримуватися різні веб-сервери при виконанні веб-додатків. Механізм формування “на льоту” Вводимо URL http: //www. server. ru/path/picture. gif. На екрані ми бачимо картинку, але чи дійсно саме картинку ми запросили на виведення? l Файл picture. gif так як і шлях path можуть ВЗАГАЛІ НЕ ІСНУВАТИ. Адміністратор на сервері може налаштувати псевдонім (alias) для будь-яких об’єктів на сервері. У результаті користувач може і не дізнатися дійсне ім’я ресурсу. l Файл picture. gif може бути не картинкою, а ПРОГРАМОЮ, що передасть браузеру картинку у форматі gif – результат роботи CGI.

ІНТЕРФЕЙС CGI-програми запускаються сервером у режимі реального часу. Сервер передає запити користувача CGI-програмі, яка ІНТЕРФЕЙС CGI-програми запускаються сервером у режимі реального часу. Сервер передає запити користувача CGI-програмі, яка їх обробляє і повертає результат своєї роботи на екран користувача. Таким чином, користувач отримує динамічну інформацію, яка може змінюватися у результаті впливу різних чинників. Скрипт CGI можу бути написаний на Сі/С++, Fortran, Perl, Visual Basic …

Вза’ємодія сервера та браузера 1. Вводимо URL у рядок адреси. 2. Браузер добувє з Вза’ємодія сервера та браузера 1. Вводимо URL у рядок адреси. 2. Браузер добувє з URL протокол та ім’я сервера. 3. Згідно з отриманою інформацією браузер звертається до сервера. На сервері (комп’ютері) має бути встановлено програму – веб-сервер, який і буде обслуговувати запити. 4. Браузер визначив ім’я сервера у базі даних DNS, дізнався його IPадресу, та, використовуючи його, підключається до серевера. 5. Сервер чекає команду від браузера. Браузер надсилає запит (наприклад, мені потрібен документ /path/doc 1. html). 6. Сервер переглядає вміст каталогу /path, знаходить там файл doc 1. html і повертає його браузеру як звичайний текст. Окрім тексту сервер повертає тип документу. 7. Браузер відображає документи згідно з інформацією про їх тип, яку передав сервер. 8. Якщо шуканий документ відсутній, сервер може надіслати документ, який містить повідомлення про помилку чи просто код помилки.

Функції CGI-іфнтерфейсу CGI виконує функції шлюзу між різними програмами, встановленими на веб-сервері та браузером Функції CGI-іфнтерфейсу CGI виконує функції шлюзу між різними програмами, встановленими на веб-сервері та браузером користувача. При запиті деякого ресурсу, програмасервер запускає програму, що знаходиться у каталозі cgi-bin, яка, у свою чергу, повертає результат для користувача. Використання CGI програм, зазвичай, вимагається, коли у браузері потрібно відобразити веб-сторінку, сформовану на основі якихось даних чи дій користувача на сайті. Інший приклад – CGI може за ІР-адресою визначити країну користувача та відкрити сайт на його рідній мові.

CGI-сценарії CGI-програми часто називають CGI-сценаріями чи просто сценаріями, оскільки, найчастіше вони написані на мові-інтерпритаторі. CGI-сценарії CGI-програми часто називають CGI-сценаріями чи просто сценаріями, оскільки, найчастіше вони написані на мові-інтерпритаторі. CGI-програми відрізняються від інших тим, що перед своїм виведенням CGI повинна вивести певні заголовки сервера – вказати хоча б тип інформації, що виводиться (наприклад, для картинки – image/gif).

Методи передачі даних Робота з CGI-сценаріями реалізується за допомогою форм (адже вводити дані з Методи передачі даних Робота з CGI-сценаріями реалізується за допомогою форм (адже вводити дані з клавіатури браузер не дозволяє). Так забезпечується універсальність програми. Користувач вводить параметри у форму, потім браузер складає всі параметри в один рядок – рядок запиту – і передає його сценарію. Алгоритм роботи CGI-програми: 1. Отримати дані, що передані користувачем. 2. Обробити дані. 3. Вивести результат. 4. Завершити роботу.

GET i POST URL має дещо довший вигляд http: //example. com: 80/path/to/document. ext? parameters GET i POST URL має дещо довший вигляд http: //example. com: 80/path/to/document. ext? parameters Може існувати ще рядок parameters, що йде після знаку запитання. Саме цей рядок і передається CGI-сценарію. Наприклад, користувач може вказати свій часовий пояс сценарію – http: //example. com/script. cgi? time=+2. Сценарій script. cgi після запуску та отримання рядка має його проаналізувати (наприклад, створити змінну time і присвоїти їй значення +2). Прийнято параметри сценаріїв вказувати у вигляді змінна=значення. Якщо потрібно передати декілька параметрів (часовий пояс та ім’я користувача), записується – http: //example. com/script. cgi? time=+2&name=Galya. Параметри прийнято розділяти символом &. Спосіб надсилати параметри сценарію, коли дані розміщуються у командному рядку URL, називається методом GET. Метод, при якому параметрів не видно – POST.

Метод GET Формування запиту браузером. При введенні у адресному рядку браузера рядка string, він Метод GET Формування запиту браузером. При введенні у адресному рядку браузера рядка string, він виконує наступні дії: 1. Виділяє з рядка ім’я сервера та порт (якщо його вказано) 2. Встановлює з’єднання з сервером і надсилає йому запит GET string HTTP/1. 0n …. . інформація. . nn У запиті n означає переведення на новий рядок, а nn - маркер закінчення запиту. Якщо сервер не отримує маркера завершення, то запит не буде оброблятися. Після рядка, що починається з GET, запит може містити інші рядки, що називаються заголовками (як і сам GET-рядок). Заголовків може бути досить багато. Протокол HTTP як раз і задає правила формування та інтерпретації цих заголовків. Тобто, HTTP являє собою не щось інше, як набір заголовків, якими обмінюються сервер та браузер. Їх формує браузер. Якщо браузер викликає сценарій, то, як правило, він передає йому якісь параметри GET сценарій? параметр=значення&параметр=значення HTTP1. 0/n

Метод POST При використанні методу POST, параметри передані сценарію не відображаються у вікні браузера. Метод POST При використанні методу POST, параметри передані сценарію не відображаються у вікні браузера. POST сценарій HTTP/1. 0n Content-length: 5n n Hello Сам блок даних, що пересилаються знаходиться після маркера закінчення. Особливість POST: при такій передачі даних сервер ніяк їх не інтерпретує, а відразу передає сценарію. Це означає, що сценарій буде запущено відразу після закінчення заголовків і сервер просто передасть йому POSTдані. Потім сценарій повинент самостійно прочитати певну кількість байтів, вказане у заголовку Content-lengt h(довжина слова HELLO – 5 символів). Тому, при використанні методу POST завжди потрібно вказувати значення змінної Content-length. Метод POST використовується для передачі великих об’ємів даних, наприклад, при завантажені файлів на сервер, чи коли є необхідним приховати від користувача значення параметрів, що передаються.

Протокол HTTP Основним призначенням протоколу HTTP є передача веб-сторінок (текстових файлів з розміткою HTML). Протокол HTTP Основним призначенням протоколу HTTP є передача веб-сторінок (текстових файлів з розміткою HTML). HTTP – протокол прикладного рівня. Обмін повідомленнями йде за схемою “запитвідповідь”. Кожен “запит-відповідь” складається з трьох частин: стартовий рядок, заголовок, тіло повідомлення, що містить дані запиту, запитаний ресурс або опис проблеми.

Заголовки HTTP Accept – призначений для інформування сервера про типи даних, які підтримуються клієнтом. Заголовки HTTP Accept – призначений для інформування сервера про типи даних, які підтримуються клієнтом. Використовується змінна HTTP_ACCEPT. Accept: text/html, text/plain, image/jpeg.

Заголовки HTTP Content-type – призначений для ідентифікації типу даних, що передаються. Використовується змінна оточення Заголовки HTTP Content-type – призначений для ідентифікації типу даних, що передаються. Використовується змінна оточення CONTENT_TYPE. Зазвичай для цього заголовка вказується значення Application/x-www-form-urlencoded. Таким чином вказується формат, у якому всі управляючі символи спеціальним чином кодуються. Content-type: text/plain

Заголовки HTTP Content-length – містить рядок, у якому записана довжина (у бітах) даних, що Заголовки HTTP Content-length – містить рядок, у якому записана довжина (у бітах) даних, що передаються при використанні методу POST. За ним закріплена змінна CONTENT_LENGTH.

Заголовки HTTP GET – використовує наступні змінні: REQUEST_URI - ідентифікатор ресурсу QUERY_STRING – параметри, Заголовки HTTP GET – використовує наступні змінні: REQUEST_URI - ідентифікатор ресурсу QUERY_STRING – параметри, що передаються сценарію REQUEST_METHOD – метод передачі інформації. У такому випадку змінна міститиме значення GET.

Заголовки HTTP Location – отримавши заголовок Location, разом з вказаним URL, сервер обов’язково переходить Заголовки HTTP Location – отримавши заголовок Location, разом з вказаним URL, сервер обов’язково переходить до вказаного URL, не чекаючи, поки завантажиться тіло документа.

Заголовки HTTP POST – використовує ті ж змінні оточення, що і заголовок GET. Дані Заголовки HTTP POST – використовує ті ж змінні оточення, що і заголовок GET. Дані методом POST можна передавати у кінці всіх заголовків. POST сценарій? параметри HTTP/1. 0

Заголовки HTTP Pragma – багатофункціональний заголовок. Одне з застосувань – заборона кеширування документа. Server Заголовки HTTP Pragma – багатофункціональний заголовок. Одне з застосувань – заборона кеширування документа. Server - містить назву та версію програмного забезпечення сервера.

Заголовки HTTP Referer – за допомогою цього заголовка можна дізнатися сервер, що посилається на Заголовки HTTP Referer – за допомогою цього заголовка можна дізнатися сервер, що посилається на нас. Це допомагає виявити зворотні посилання. User Agent – уточнює версію браузера.

Заголовки HTTP Connection (з'єднання) - може приймати значення Keep. Alive і close. Keep-Alive ( Заголовки HTTP Connection (з'єднання) - може приймати значення Keep. Alive і close. Keep-Alive ("залишити в живих") означає, що після видачі даного документа з'єднання з сервером не розривається, і можна видавати ще запити. Більшість браузерів працює саме в режимі Keep-Alive, оскільки він дозволяє за одне з'єднання з сервером "викачати" htmlсторінку і малюнки до неї. Будучи одного разу встановленим, режим Keep-Alive зберігається до першої помилки або до явної вказівки в черговому запиті close ("закрити") - з'єднання закривається після відповіді на даний запит.

Заголовки HTTP Особливості: l Всі символи переводяться у верхній регістр l На початку імені Заголовки HTTP Особливості: l Всі символи переводяться у верхній регістр l На початку імені додається HTTP l Символи “-” аміняються підкреслюванням “_”

Формат HTTP-відповіді Формат відповіді дуже схожий на формат запиту: він також має заголовок і Формат HTTP-відповіді Формат відповіді дуже схожий на формат запиту: він також має заголовок і тіло, розділене порожнім рядком. Заголовок також складається з основного рядка і рядків параметрів. Основний рядок відповіді складається з 3 -х полів: Версія протоколу - аналогічний відповідному параметру запиту. Код помилки - кодове позначення "успішності" виконання запиту. Код 200 означає "все нормально" (OK). Словесний опис помилки - "розшифровка" попереднього коду. Наприклад, для 200 це OK, для 500 - Internal Server Error. http-відповіді: Connection - аналогічний відповідному параметру запиту. Якщо сервер не підтримує Keep-Alive (є і такі), то значення Connection відповідає завжди close.

Формат HTTP-відповіді Content-Type ( Формат HTTP-відповіді Content-Type ("тип вмісту") - містить позначення типу вмісту відповіді. Залежно від значення Content-Type браузер сприймає відповідь як HTML-сторінку, картинку gif або jpeg, як файл, який треба зберегти на диску, або як що-небудь ще і робить відповідні дії. Значення Content-Type для браузера аналогічне значенню розширення файлу для Windows. text/html - текст у форматі HTML (веб-сторінка); text/plain - простий текст (аналогічний "блокнотовскому"); image/jpeg - картинка у форматі JPEG; image/gif - те ж, у форматі GIF; арplication/octet-stream - потік "октетів" (тобто просто байт) для запису на диск. Content-Length - довжина відповіді в байтах. Last-Modified ("модифікований востаннє") - дата останньої зміни документа.