
подгон 2018 (легендарный) / 3 курс -20241122T221211Z-001 / ПИУС (PHP) / ПИУС_зачет
.pdfБлок №1. Основы работы WEB + API + Спецификация OpenAPI
1) IP адреса. Принцип работы DNS. Обратный DNS запрос.
IP адреса:
IP-адрес – это уникальный адрес, идентифицирующий устройство в интернете или локальной сети. IP означает «Интернет-протокол» – набор правил, регулирующих формат данных, отправляемых через интернет или локальную сеть.
Принцип работы DNS:
Пользователь вводит запрос в строке браузера. Тот в свою очередь перенаправляет его DNS-серверу, который ищет совпадения между доменным именем и IP. При обнаружении совпадений браузер делает запрос по IP-адресу сервера и получает в ответ нужную информацию, после чего браузер отображает ее.
Обратный DNS запрос:
На простом языке обратный DNS или rDNS делает противоположное традиционному DNS. То есть, вместо преобразования доменного имени на IP, он преобразует IP к имени хоста.
2) Протокол HTTP. HTTP запросы и ответы. HTTP коды ответа.
Протокол HTTP:
HTTP — протокол прикладного уровня передачи данных, изначально — в виде гипертекстовых документов в формате HTML, в настоящее время используется для передачи произвольных данных.
HTTP запросы и ответы:
HTTP сообщения - это обмен данными между сервером и клиентом. Есть два типа сообщений: запросы, отправляемые клиентом, чтобы инициировать реакцию со стороны сервера, и ответы от сервера.
Запросы содержат следующие элементы:
•HTTP-метод, обычно глагол подобно GET, POST или существительное, как OPTIONS или HEAD, определяющее операцию, которую клиент хочет выполнить. Обычно, клиент хочет получить ресурс (используя GET) или
передать значения HTML-формы (используя POST), хотя другие операция могут быть необходимы в других случаях.
•Путь к ресурсу: URL ресурсы лишены элементов, которые очевидны из контекста, например
без протокола (http://), домена (здесь developer.mozilla.org), или TCP порта(здесь 80).
•Версию HTTP-протокола.
•Заголовки (опционально), предоставляющие дополнительную информацию для сервера.
•Или тело, для некоторых методов, таких как POST, которое содержит отправленный ресурс.
Ответы содержат следующие элементы:
•Версию HTTP-протокола.
•HTTP код состояния, сообщающий об успешности запроса или причине неудачи.
•Сообщение состояния — краткое описание кода состояния.
•HTTP заголовки, подобно заголовкам в запросах.
•Опционально: тело, содержащее пересылаемый ресурс.
HTTP коды ответа:
Код ответа (состояния) HTTP показывает, был ли успешно выполнен определённый HTTP запрос. Коды сгруппированы в 5 классов:
1.Информационные 100 - 199
2.Успешные 200 - 299
3.Перенаправления 300 - 399
4.Клиентские ошибки 400 - 499
5.Серверные ошибки 500 - 599
3) HTTPS. Обеспечение безопасности. Сертификаты.
HTTPS (от англ. HyperText Transfer Protocol Secure) – это безопасный протокол передачи данных, который поддерживает шифрование посредством криптографических протоколов SSL и TLS, и является расширенной версией протокола HTTP.
HTTPS работает благодаря SSL/TLS-сертификату. SSL/TLS-сертификат ― это цифровая подпись сайта. С её помощью подтверждается его подлинность. Перед тем как установить защищённое соединение, браузер запрашивает этот документ и обращается к центру сертификации, чтобы подтвердить легальность документа. Если он действителен, то браузер считает этот сайт безопасным и начинает обмен данными.
Сертификаты.
https://firstssl.ru/faq/general-questions/chto-takoe-https

Из-за этого ограничения самоподписанные сертификаты не подходят для производственной среды, предназначенной для широкой публики. Они обычно используются для тестирования или защиты некритичных сервисов, используемых одиночными пользователями или небольшими группами пользователей, которые могут добавлять сертификат в список доверенных через альтернативные каналы.
4) Отличия GET и POST запросов. Примеры. https://guruweba.com/html/metody-get-i-post-ispolzovanie-i-otlichiya/
5) Что такое Cookie? Клиент-серверное взаимодействие.
При использовании HTML-технологии существует проблема - невозможности
отслеживания последовательных запросов пользователей. Cookie является решением одной из наследственных проблем HTTP протокола. Эта проблема
заключается в непостоянстве соединения между клиентом и сервером, После того, как браузер послал запрос и получил ответ, HTTP соединение

закрывается, и информация о пользователе теряется. Транзакция завершается после того, как браузер сделал запрос, а сервер выдал соответствующий
ответ. Сразу после этого сервер "забывает" о пользователе и каждый следующий запрос того же пользователя считает новым пользователем.
ЗаголовокSet -cookieиспользуhttpсервдляотперомтсябрапользователявкиузеру
данныхcookie,заголовCookieиспбраузокльзу,чтобыпозжевернутьромтся |
|
получеранееданные |
cookieсерв,чтобыhttpерузнал" "верклиентаподанным |
cookie. |
|
Применяется для сохранения данных на стороне пользователя, на практике обычно используется для[1]:
•аутентификации пользователя;
•хранения персональных предпочтений и настроек пользователя;
•отслеживания состояния сеанса доступа пользователя;
•сведения статистики о пользователях.
https://www.opengl.org.ru/vvedenie-v-tekhnologii-sozdaniya-internet-uzlov/cookie- http.html

6) !""#$%&$'$!""#$%($'$!""#$%)$*+,-./0
https://habr.com/ru/post/308846/ https://nuancesprog.ru/p/12982/
В HTTP/1.1 для каждого запроса требуется устанавливать отдельное TCPсоединение. Мультиплексирование же позволяет браузеру выполнять множество запросов в рамках одного TCP-соединения:


7) Принцип работы web-сервера. CGI и FastCGI.
Веб-сервер — сервер, принимающий HTTP-запросы от клиентов, обычно веббраузеров, и выдающий им HTTP-ответы, как правило, вместе с HTMLстраницей, изображением, файлом, медиа-потоком или другими данными.
На веб-сервере HTTP-сервер отвечает за обработку входящих запросов и ответ на них. При получении запроса, HTTP-сервер сначала проверяет, существует ли ресурс по данному URL. Если это так, веб-сервер отправляет содержимое файла обратно в браузер. Если нет, сервер приложения генерирует необходимый ресурс.
http://xandeadx.ru/blog/php/866
8) Что такое API? Основные типы API. Архитектурные стили API
API — описание способов, которыми одна компьютерная программа может взаимодействовать с другой программой.

API (аббревиатура от Application Programming Interface) – интерфейс программирования приложений, позволяющий сервисам взаимодействовать, получать доступ и обмениваться данными.
Типы API
●RPC (Remote Procedure Call ) – удаленный вызов процедур,
одна из простейших парадигм API, в которой клиент вызывает исполнение блока кода на сервере.

●SOAP (Simple Object Access Protocol) – простой протокол доступа к объектам, формат обмена сообщениями
●REST (Representational State Transfer ) – передача состояния представления. архитектурный стиль
● GraphQL
