Web Flashcards

1
Q

Как работает интернет, что происходит между тем как пользователь вбивает
запрос в адресную строку и тем как загрузится страница?

A

Когда браузер получает введенный адрес, он извлеает из него протокол, хост, представленный доменным именем, и ресурс. Затем браузеру необходимо из хоста получить ip-адрес сервера. Сначала проверяется локальный кэш, потом кэш системы, и если ip-адрес не найден, тогда делается запрос к dns. И получив ip-адрес сервера, мы можем установить соединение по протоколу tcp, который в отличие от udp производит доставку пакетов с подтверждением. Формируется tcp сегмент, в заголовок добавляется порт соответсвующий протоколу из введенного адреса(80 для http и 443 для https)
для установки соединения между браузером и сервером в стандарте TCP используется система «трёх рукопожатий». Работает она так:

Устройство пользователя отправляет специальный запрос на установку соединения с сервером — называется SYN-пакет.
Сервер в ответ отправляет запрос с подтверждением получения SYN-пакета — называется SYN/ACK-пакет.
В конце устройство пользователя при получении SYN/ACK-пакета отправляет пакет с подтверждением — ACK-пакет. В этот момент соединение считается установленным.
Отправляется http запрос:
GET / HTTP/1.1
Host: google.com
Connection: close
[другие заголовки]
—Сервер разбирает запрос по параметрам:
—Сервер проверяет существование виртуального хоста, который соответствует google.com.

—Если насервере установлен модуль перезаписи (mod_rewriteдля Apache илиURL Rewriteдля IIS), тоонсопоставляет запрос содним изсконфигурированных правил. Если находится совпадающее правило, тосервер использует его, чтобы переписать запрос.
сервер находит контент, который соответствует запросу, внашем случае онизучит индексный файл.

—Далее сервер разбирает («парсит») файл спомощью обработчика. Если Google работает наPHP, тосервер использует PHP для интерпретации индексного файла инаправляет результат клиенту.
Формируется ответ со статус кодом 200

How well did you know this?
1
Not at all
2
3
4
5
Perfectly