Научная статья на тему 'ОБРАЩЕНИЕ КЛИЕНТА К СЕРВЕРУ И ОБРАТНО'

ОБРАЩЕНИЕ КЛИЕНТА К СЕРВЕРУ И ОБРАТНО Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
69
7
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ХОСТИНГ / WEB / HTTP / БРАУЗЕР / СЕРВЕР

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Рюмин Д.А., Ержанов Т.М., Кусаинов Р.М., Калакова Г.К.

В данной статье описывается обращение клиента к серверу через HTTP протокол браузера.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «ОБРАЩЕНИЕ КЛИЕНТА К СЕРВЕРУ И ОБРАТНО»

Рюмин Д. А. студент Ержанов Т.М.

студент Кусаинов Р.М. студент

специальность «Информатика»

Калакова Г. К.

научный руководитель, ст. преподаватель КГУ им. А. Байтурсынова Республика Казахстан, г. Костанай ОБРАЩЕНИЕ КЛИЕНТА К СЕРВЕРУ И ОБРАТНО

Аннотация

В данной статье описывается обращение клиента к серверу через HTTP протокол браузера.

Ключевые слова: хостинг, WEB, HTTP ,браузер, сервер.

Если начинать рассматривать Web глазами обыкновенных пользователей глобальной сети интернет, то это всего лишь сайты (временами и с невероятно красивым дизайном), в которых можно прочитать необходимую информацию, послушать музыкальные композиции, посмотреть видео, поразвлечься в социальных сетях. Однако нужно знать не только, как нажимать на элементы навигации, баннеры, кнопки, но и, что происходит начиная с того, как происходит ввод адреса сайта в адресной строке браузера и заканчивая тем, как отображается непосредственно сам сайт.

WEB?

Как всем известно, кто посещает INTERNET, через браузер является пользователем, причём таких пользователей огромное количество по всему миру, однако, чтобы пользователи могли отображать сайты в своих браузерах, эти самые сайты следует где-то хранить. Это хранение происходит на Web серверах, на которых хостятся сайты, которые в свою очередь состоят много из чего, но в первую очередь сайты состоят как минимум из HTML страницы (первоначальное предназначение) [1].

Каждый пользователь набирает адрес сайта (URL) в адресной строке, но стоит заметить, что это не просто URL, а запрос Web серверу в надежде получить желаемую страницу, сервер находит страницу, после чего контент этой страницы отдаётся пользователю, а браузер, принимая данные страницы, выводит их сам в себя. Однако у данного алгоритма есть огромный недостаток. HTML - это полная статика, то есть все пользователи получат один и тот же контент. Для того, чтобы пользователи могли получать разный контент следует изменить алгоритм работы Web. В изменённом алгоритме в первую очередь необходимо отредактировать структуру работы Web сервера. Сайты по-прежнему хостятся, однако, имеют

другое расширение, например . php (может быть и любое другое), но внутри файла остаётся тот, же самый HTML код, а в нужном месте уже появляется возможность вставки программного кода, который будет обрабатываться интерпретатором некой серверной технологии PHP или что то подобное ему.

Теперь пришло время разобраться, что же происходит, когда пользователь отправляет запрос Web серверу с некой серверной технологией в виде набора адреса сайта (URL) в адресной строке. Как только запрос будет отправлен, сервер при нахождении указанной страницы замечает, что запрашиваемая страница с расширением .php, а это означает, что передача управления переходит непосредственно интерпретатору .php. Интерпретатор читает файл, то что его не касается сразу же отдаёт в браузер. Дойдя до своего кода, заходит в код, производит что либо (интерпретирует) и затем результат также отправляет в браузер. Иными словами перед тем, как отдать контент в браузер код обрабатывается.

КЛИЕНТЫ, БРАУЗЕРЫ, СЕРВЕРЫ НЕОТЪЕМЛЕМАЯ ЧАСТЬ

WEB.

Как известно клиентов, браузеров, серверов огромное количество. В любой момент каждый может создать, что то своё. Понятное дело, что все серверы, браузеры, клиенты должны говорить на одном языке. Таким языком и является HTTP (HyperText Transfer Protocol). У HTTP существует своя спецификация, где всё чётко написано, что означает что и в какой последовательности следует передавать и отдавать.

HTTP ?

Каждый раз, когда пользователь набирает в адресной строке браузера "httpV/куда то", то браузер пользователя устанавливает соединение с сервером. Причём браузер не просто устанавливает соединение а посылает "Запрос клиента", а сервер соответственно выдаёт "Ответ сервера".

Иными словами браузер передаёт строку "GET /папка_с_сайтом/index.html HTTP/1.1 \r\n(ENTER)" - это непосредственно строка запроса, которая состоит из трёх частей разделенных пробелом. Сначала браузер передаёт, то что называется http методом (способ с помощью которого браузер хочет, что то объяснить серверу) "GET" или "POST". Затем браузер говорит серверу, чтобы тот дал ему, то что лежит по адресу "/ папка_с_сайтом /index.html" и указывает версию протокола "HTTP/1.1". После чего серверу нужно дать понять, что строка запроса закончена и этим завершением являются 2(Два) специальных символа ^(возврат каретки)\л(перевод на новую строку), но браузер догадывается, что переданной информации будет недостаточно, поэтому браузер передаёт дополнительную Мета информацию именуемую как заголовки запроса. Единственным обязательным заголовком запроса является Host (доменное имя). В какой то момент браузер должен дать понять серверу, что все отправляемые данные были переданы. Таким понятием является пустая

строка "". В конце последнего метода передаётся \г(возврат каретки)\п(перевод на новую строку).

После того, как строка запроса была успешно передана, Web сервер посылает обратно браузеру строку "HTTP/1.1 200 OK \r\n(ENTER)" - это непосредственно строка ответа, которая состоит из трёх частей разделённых пробелом. Сначала сервер передаёт версию протокола "HTTP/1.1". Затем посылает статус "200" и описание статуса "OK". После чего браузеру нужно дать понять, что строка ответа закончена и этим завершением являются два специальных символа \г(возврат каретки)\п(перевод на новую строку), но сервер, как и браузер догадывается, что переданной информации будет недостаточно, поэтому сервер передаёт дополнительную Мета информацию именуемую заголовками ответа. Заголовки ответа могут состоять из:

- Server (сервер и его версия) \r\n(ENTER)

- Content-Type (тип mime посылаемого документа) \r\n(ENTER)

- Content-Length (количество байтов, посылаемых в ответе) \r\n(ENTER)

- \r\n(ENTER)

В какой -то момент сервер должен дать понять браузеру, что все отправляемые заголовки ответа были переданы. Таким понятием является пустая строка ""(в конце последнего метода передаётся \г(возврат каретки)\п(перевод на новую строку)). После чего сервер начинает посылать браузеру контент длиной "Content-Length (Байт)". Поскольку финальной точки здесь уже нет, именно поэтому сервер посылает заголовок "Content-Length (Байт)", чтобы браузер смог понять на каком количестве байт заканчивается приём контента.

После проделанного алгоритма происходит отображение сайта (временами и с невероятно красивым дизайном).

Использованные источники: 1. Кузнецов М.В., Симдянов И.В. - MySQL 5. Санкт - Петербург, 2010, 975 с.

Сажин Ю.В., д.э.н. профессор Кузнецова Т.В. студент

Мордовский государственный университет им. Н.П. Огарёва

Россия, г. Саранск СОСТОЯНИЕ ЖИЛИЩНОГО СТРОИТЕЛЬСТВА В РЕСПУБЛИКЕ

МОРДОВИЯ

Аннотация: В статье проведены анализ жилищного строительства в Республике Мордовия, оценка деятельности строительных организаций, рассмотрены диспропорции в структуре жилого фонда региона.

i Надоели баннеры? Вы всегда можете отключить рекламу.