Веб технологии / Введение в веб
.pdfDNS
Схема работы DNS
Виды записей DNS
•A - связывает имя хоста с адресом протокола IPv4
•AAAA (IPv6 address) - связывает имя хоста с адресом протокола IPv6
•CNAME (canonical name) - каноническая запись имени (псевдоним) используется для перенаправления на другое имя
•PTR (pointer или запись указателя) - связывает IPадрес хоста с его каноническим именем
•NS (name server) - указывает на DNS-сервер для данного домена
•MX (mail exchange или почтовый обменник) - указывает серверы обмена почтой для данного домена
Взаимодействие по протоколу HTTP
Взаимодействие между клиентом и сервером осуществляется по протоколу HTTP - протокол передачи гипертекста. То есть в своей основе протокол обмена между клиентами и сервером Web является текстовым.
Это делает его достаточно легким для понимания, программной поддержки, отладки программ, а также делает его удобным для
межплатформенного взаимодействия, то есть для совместной работы клиентов и серверов, реализованных на разных платформах. (Такое взаимодействие можно реализовать и в бинарном протоколе, однако текстовый протокол более прозрачен).
Протокол HTTP является одним из протоколов прикладного уровня в стеке протоколов TCP/IP и при этом одним из самых востребованных.
Взаимодействие по протоколу HTTP
На практике в подавляющем большинстве случаев транспортным протоколом для HTTP является протокол TCP, причем сервер HTTP (сервер Web) находится в состоянии ожидания соединения со стороны клиента стандартно по порту 80 TCP, а клиент HTTP (браузер Web)
является инициатором соединения.
Втерминах Web все, к чему может получить доступ пользователь, – документы, изображения, программы, – называется ресурсами. Каждый ресурс имеет уникальный для Web адрес,
называемый универсальным идентификатором ресурса (URI – Universal Resource Identifier).
Всамом общем случае URI выглядит следующим образом:
protocol://user:password@host:port/path/file?parameters#fragment
Взаимодействие между клиентом и сервером Web осуществляется путем обмена сообщениями. Сообщения HTTP делятся на запросы клиента серверу и ответы сервера клиенту.
Передача гипертекста
Запрос: |
Ответ: |
GET /wiki/страница HTTP/1.1 |
HTTP/1.1 200 OK |
Host: ru.wikipedia.org |
Server: Apache |
Accept: text/html |
Content-Language: ru |
Connection: close |
Content-Type: text/html; charset=utf-8 |
(пустая строка) //CR LF |
Content-Length: 1234 |
|
Connection: close |
|
(пустая строка) //CR LF |
|
(HTML) |
Методы HTTP
OPTIONS ― запрос методов сервера
GET ― запрос документа
HEAD ― аналог GET, но без тела запроса
POST ― передача данных клиент
PUT ― размещение файла по URI DELETE ― удаление файла по URI
Коды состояния HTTP
1xx ― Информационные
2xx ― Успешное выполнение
200 ― OK
204 ― NoContent (только заголовки)
206 ― PartitialContent (часть ответа)
3xx ― Перенаправления
301 ― Moved Pemanently (SEO,
кеширование)
302 ― Found (логика работы сайта)
304 ― Not Modified (при условном GET)
4xx ― Ошибка клиента
400 ― Bad Request
401 ― Unauthorized
403 ― Forbidden
404 ― Not Found
408 ― Request Timeout
5xx ― Ошибка сервера
500 ― Internal Server Error
502 ― Bad Gateway
503 ― Service Unavailable
504 ― Gateway Timeout
505 ― HTTP version not supported
507 ― Insufficient Storage
Клиент-серверная архитектура
Клиент-сервер (Client-server) –
вычислительная или сетевая архитектура, в которой задания или сетевая нагрузка распределены между поставщиками услуг (сервисов), называемых серверами, и заказчиками услуг, называемых
клиентами.
Нередко клиенты и серверы взаимодействуют через компьютерную сеть и могут быть как различными физическими устройствами, так и программным обеспечением.
Преимущества и недостатки
Преимуществами данной архитектуры |
Недостатки: |
||
являются: |
● |
неработоспособность сервера может |
|
● |
возможность, в большинстве случаев, |
|
сделать неработоспособной всю |
|
распределить функции вычислительной |
|
вычислительную сеть; |
|
системы между несколькими |
● |
администрирование данной системы |
|
независимыми компьютерами в сети; |
|
требует квалифицированного |
● все данные хранятся на сервере, |
|
профессионала; |
|
|
который, как правило, защищен гораздо |
● |
высокая стоимость оборудования; |
|
лучше большинства клиентов, а также на |
|
|
|
сервере проще обеспечить контроль |
|
|
|
полномочий, чтобы разрешать доступ к |
|
|
|
данным только клиентам с |
|
|
|
соответствующими правами доступа; |
|
|
● |
поддержка многопользовательской |
|
|
|
работы; |
|
|
● |
гарантия целостности данных. |
|
|