Категория выделена специально для пользователей сети Intrnet, желающих познакомиться с работой данной технологии и принципами построения сети. Материал изложен на основе понимания данной темы автором сайта. Качество понимания, посетитель данного раздела, может  оценить и сравнить его с собственным представлением, дав ему оценку, непосредственно на страницах изложенного материала.

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

 

На сайте, или для более ясного представления будем называть его: "в корневом каталоге" , присутствует так называемый индексный файл. По умолчанию, северная программа настроена таким образом, что при обращении "клиента" (браузера пользователя), она ищет в корневом каталоге сайта с которым ассоциируется определённое имя (называемое доменным именем, а доменное имя в свою очередь ассоциируется со cпециальным ip - адресом, который ассоциируется уже с сервером) файл, с именем "index.*".

Индексный файл, в зависимости от своей принадлежности, которая обозначается расширением, считывается и обрабатывается, своей программой - "обработчиком". Например файл index.html обрабатывается сервером apache2 (то есть сразу передаётся браузеру), если - же файл имеет расширение "php" , то он передаётся (сервером apache2) на обработку интерпретатору "php", который, обрабатывает программу в данном файле и возвращает готовый для чтения браузером текст  в формате "html", программе-серверу apache2 , сервер передаёт результат, дальше по порядку, браузеру.

Другими словами, если "клиент" (браузер) запросил страницу с расширением "html", сервер (apache2) отдаёт этот файл "на прямую", минуя другие программы. Если же расширение запрашиваемого файла (страницы) "PHP", то сервер (apache2) определяет, что этот файл содержит программу и необходимо запустить код этой программы в определённом приложении, в данном случае это PHP интерпритатор, отдаёт файл интерпритатору и получает, сгенерированный с помощью программы в файле "PHP" файл в виде файла "html". Файлы с так называемым "html" как раз и предназначаются для чтения браузером. Затем серверная программа apache2, отправляет свежеиспечённый файл "html", для расшифровки, интересующемуся браузеру.

Если в адресной строке  браузера (клиента) введено доменное имя сайта, например "exemple.com", без указания какого то конкретного файла или страницы, то браузер вызывает сервер сайта с этим доменным именем, сервер осуществляет поиск в корневом каталоге сайта индексного файла для его обработки и передачи браузеру.

Программа записанная в index.php, грубо говоря, запускается php инрерпритатором, что - бы в ответ серверу (давшего команду интерпритатору) apache2 сгенерировался подходящий для браузера html - текст, который уже дальше передаётся браузеру инициализировавшему (опять же через apache2) этот файл. То есть сервер выступает в роли посредника - распределителя. 

Если это файл уже изначально подготовленный, то есть html-файл, то он отправляется сразу в браузер, запросивший доменное имя сайта. Нужно заметить, что файлы с расширением html - называются статическими страницами, а файлы с расширением php - именуются динамическими страницами сайта. В корневом каталоге, разумеется может быть только один единственный индексный файл.

Я постарался упростить, на сколько это возможно, роль файлов index.html и index.php в процессе взаимодействия: браузер - сайт, конечно же это происходит несколько сложнее, но в целом принцип выдержан.

Комментировать (2 Комментария)

Рассмотрим, что из себя представляют такие два понятия, как сервер и клиент. В области понятий о работе internet - определения слов клиент и сервер являются одними из самых значительных. Поэтому пожалуй и начнём рубрику с этих слов.

В нашей теме будем рассматривать эти понятия, в контексте программного обеспечения. Во первых начнём с того, что клиент всегда зависит от сервера, но и сервер является совершенно бесполезным, если у него нет ни одного клиентаКлиент и сервер по отдельности никак не могут функционировать, работают они всегда взаимодействуя друг с другом. Первое их отличие заключается в том, что клиент в один отдельно взятый отрезок времени может работать только с одним сервером, тогда как сервер может, в этот же отрезок времени, обслуживать множество клиентов. Можно даже сказать так, что клиент является продолжением или частью сервера.

Например, браузер является программой клиентом , это в принципе и очевидно, потому, что браузером пользуется пользователь, которого можно так же назвать клиентом, так как он пользуется услугами определённого информационного ресурса в данный момент времени. Браузер, по запросу пользователя отправляет на сервер запрос об информации, которую запросил пользователь. Запрос происходит на языке понятном серверу, таким языком является протокол, в данном случае это протокол http или https.

HTTP — широко распространённый протокол передачи данных, изначально предназначенный для передачи гипертекстовых документов (то есть документов, которые могут содержать ссылки, позволяющие организовать переход к другим документам)
 
HTTPS (HyperText Transfer Protocol Secure) — расширение протокола HTTP, поддерживающее шифрование. Данные, передаваемые по протоколу HTTP, инкапсулируются в криптографический протокол SSL или TLS. В отличие от HTTP, для HTTPS по умолчанию используется TCP-порт 443.
Сервер, в свою очередь в ответ отправляет желаемую информацию на том же "языке" протоколе, а именно файл с расширением .html. Браузер -- это как раз та программа, которая предназначена для обработки файлов с таким расширением и вывода зашифрованной информации в файле на монитор, в виде понятном пользователю, в виде картинок, текста, видео и аудио информации.
 
Приведу пример программы-сервера. Самой распространённой такой программой на сегодняшней день, является apache2. Эта программа работает на "компьютере" который так же принято называть сервером и расположен он, как правило удалённо от компьютера пользователя в специальных зданиях, называемых ЦОД (центрах обработки данных). При наличии некоторых знаний, кстати сказать, такой сервер (apache2) можно расположить у себя дома, на отдельном компьютере или даже на том же компьютере на котором вы пользуетесь браузером.
 
 
Комментировать (5 Комментариев)

Подкатегории