Преимущества динамических страниц. Для чего используют PHP. Взаимодействие клиент-сервер с использованием PHP

Здравствуйте, уважаемые посетители моего скромного блога для начинающих вебразработчиков и web мастеров ZametkiNaPolyah.ru. Хочу представить вашему вниманию первую статью из рубрики Заметки о PHP, в которой я попытаюсь рассказать о преимуществе использования PHP. Точнее не только PHP, а о преимуществе динамических HTML-документов над статическими.

Преимущества динамических страниц. Для чего используют PHP. Взаимодействие клиент-сервер с использованием PHP.

 В общем, в данной статья я бы хотел поговорить, о принципе взаимодействия сервера с клиентом при использование PHP сервера, естественно, на пальцах, но я планирую более подробно и детально затронуть эту тему в дальнейшем, но скорее всего в рубрике Заметки о хостингах и доменах, ну, или создам отдельную рубрику посвященную серверам. Если сказать в двух словах, то тема данной статьи — взаимодействие клиент-сервер при наличие PHP сервера или преимущества динамических страниц.


Статические HTML страницы. Взаимодействие клиент-сервер без использования PHP-сервера.

Наконец-то дошли руки до PHP. В данной публикации речи про установку PHP сервера или сервера Apache не будет. А сегодня будет небольшое введение по этой теме. Данная часть статьи посвящена взаимодействию клиент-сервер без использования PHP.  Давайте вспомни статью, посвященную эталонной модели и семи уровнях модели OSI. И представим такую ситуацию: есть пользователь, который хочет найти какую-то информацию и есть огромная машина далеко-далеко, на которой эта информация хранится. Назовем их соответственно сервер и клиент. А на этой машине установлено серверное программное обеспечение. И допустим, что информация на этом сервере хранится в виде HTML документа. И вот пользователь обратился к серверу за этой HTML страницей. Сервер выбрал интересующую страницу, обработал ее, отправил клиенту. Клиент(браузер) в свою очередь получил страницу, по своему ее обработал и пользователь увидел на экране своего монитора, представленную в удобном виде информацию. В принципе тут ничего сложного, обо все этом я писал в рубрике Заметки по HTML, которая целиком посвящена языку разметки гипертекста.

Понятно, что HTML – это статика, то есть, каждый пользователь, скачавший HTML документ, увидит одно и то же. А нам бы, например, хотелось, чтобы пользователи имели различные права доступа к документу и в зависимости от этих прав видели только определенную часть этого документа, естественно, что таких средств в HTML нет.

Схема взаимодействия клиент-сервер без использования PHP

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

Динамические страницы. Взаимодействие клиент-сервер с использованием PHP сервера.

Но, давайте немного переработаем эту схему и посмотрим, как будет выглядеть эта же схема если мы будем использовать такой язык программирования как PHP. Но вместо PHP можно использовать и ASP net, и Perl, и Java, поэтому, я считаю, что можно использовать нейтральное слово модуль сервера, в данном случае – это PHP сервер. Таким образом, если пользователь делает запрос к web странице, на которой имеется написанный скрипт на PHP или любом другом серверном языке программирования. Происходит следующая картина: вначале пользователь обращается непосредственно к серверу, указывая путь к нужному файлу(документу) в адресной строке браузера, сервер находить нужный документ и отдает его на обработку серверному модулю, в нашем случае это PHP сервер, который сканирует HTML документ и ищет в нем участки кода написанные на PHP, чтобы в дальнейшем их обработать. Обратите внимание, что PHP интерпретатор просто отбрасывает все HTML теги, ему они не нужны. PHP интерпретатор можно сравнить с переводчиком, которому дали текст часть которого написана на русском, а часть на китайском, естественно, что переводчик сразу же отбросит весь русский текст и будет работать только с китайским. А каждый китайский иероглиф переводчик будет переводить на русский язык и записать это все на лист бумаги.

Затем модуль PHP отдает обработанный документ серверу, после чего сервер отправляет этот документ нашему браузеру, и в итоге мы видим у себя на экране HTML страницу, состоящую из HTML элементов, написанную HTML тегами, но при использование PHP сервера, каждый пользователь, запрашивающий тот или иной документ, на выходе может получить различную информацию. Также можно смело говорить, что миф о том, что поисковики отдают предпочтение HTML документам, нежели сайтам, написанным на PHP, можно считать разрушенным, так как на выходе мы получаем тот же самый HTML документ. Поэтому, можно смело говорить, что этот фактор никак не влияет на поисковое продвижение сайтов(подробнее о факторах влияющих на поисковое продвижение), а SEO специалисты, утверждающие обратное немного не компетентны в этом вопросе(о том, что такое SEO и какое SEO бывает).

Для большей наглядности приведу рисунок, на котором изображена передача данных между сервером и клиентом, но уже с использованием PHP сервера.

Схема взаимодействие клиент-сервер с использованием PHP

Передача данных клиент-сервер, для чего нужен сервер Apache. Локальный сервер.

Для чего нужен PHP сервер мы разобрались, теперь давайте поговорим о назначение сервера Apache. Понятно, что мы можем находиться где-нибудь в Магадане, а сервер находится где-нибудь в Москве и нужно как-то организовать передачу данных между сервером и пользователем. Но, перед тем как организовывать передачу данных между сервером и клиентом, а также рассматривать, как это все происходит в масштабах всемирной паутины нужно каким-либо образом отладить работу своего сайта у себя дома на компьютере, в этом может на помочь джентльменский набор web-разработчика Денвер, о котором я уже писал на страницах своего блога или же мы можем установить по отдельности HTTP-сервер Apache, который грубо говоря отвечает за передачу данных между сервером и клиентом, PHP сервер, который обрабатывает и проверяет документы написанные с использованием PHP, ну а в последствии и MySQL сервер, который отвечает за хранение и ведение баз данных нашего будущего сайта, про установку и настройку PHP сервера мы поговорим в одной из следующих статей, а так же о том, как установить и настроить Apache, а про установку и настройку сервера MySQL вы уже можете прочитать. Ну и также будет статья посвященная тому, как связать вместе Apache, PHP и MySQL. Обратите внимание, что последовательность установки серверов не имеет никакого значения, они в принципе могут работать отдельно друг от друга!

На этом всё, спасибо за внимание, надеюсь, что был хоть чем-то полезен и до скорых встреч на страницах блога для начинающих вебразработчиков и вебмастеров ZametkiNaPolyah.ru 

Текст комментария: