Процедура «запрос — ответ»

В наиболее общем виде процесс «запрос — ответ» состоит из просьбы браузера к веб-серверу отправить ему веб-страницу и выполнения браузером данной просьбы. После этого браузер занимается отображением страницы.
При этом соблюдается такая последовательность действий.

  1. Вы вводите в адресную строку браузера http://server.com.
  2. Ваш браузер ищет IP-адрес, соответствующий доменному имени server.com.
  3. Браузер посылает запрос на главную страницу server.com.
  4. Запрос проходит по Интернету и поступает на веб-сервер server.com
  5. Веб-сервер, получивший запрос, ищет веб-страницу на своем жестком диске.
  6. . Сервер извлекает веб-страницу и отправляет ее по обратному маршруту в адрес браузера.
  7. Браузер отображает веб-страницу.

При передаче типовой веб-страницы этот процесс осуществляется для каждого имеющегося на ней объекта: элемента графики, встроенного видео- или Flash-ролика и даже шаблона CSS

Обратите внимание на то, что на шаге 2 браузер ищет IP-адрес, принадлежащий доменному имени server.com. У каждой машины, подключенной к Интернету, включая и ваш компьютер, есть свой IP-адрес. Но, как правило, доступ к веб-серверам осуществляется по именам, таким как google.com. Вам, должно быть, известно, что браузер обращается к вспомогательной интернет-службе, так называемой службе доменных имен (Domain Name Service (DNS)), для того чтобы найти связанный с сервером IP-адрес, а затем воспользоваться им для связи с компьютером.

При передаче динамических веб-страниц процедура состоит из большего количества действий, поскольку кней могут привлекаться как PHP, так иMySQL

  1. Вы вводите в адресную строку браузера http://server.com.
  2. Ваш браузер ищет IP-адрес, соответствующий доменному имени server.com
  3. Браузер посылает запрос на главную страницу server.com.
  4. Запрос проходит по Сети и поступает на веб-сервер server.com
  5. Веб-сервер, получивший запрос, ищет веб-страницу на своем жестком диске.
  6. Теперь, когда главная страница размещена в его памяти, веб-сервер замечает, что она представлена файлом, включающим в себя PHP-сценарии, и передает страницу интерпретатору PHP.
  7. Интерпретатор PHP выполняет PHP-код.
  8. Кое-какие фрагменты кода PHP содержат MySQL-инструкции, которые интерпретатор PHP, в свою очередь, передает процессору базы данных MySQL.
  9. База данных MySQL возвращает результаты выполнения инструкции интерпретатору PHP.
  10. Интерпретатор PHP возвращает веб-серверу результаты выполнения кода PHP, а также результаты, полученные от базы данных MySQL.
  11. Веб-сервер возвращает страницу выдавшему запрос клиенту, который отображает эту страницу на экране.

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

В каждом из примеров возвращенные браузеру HTML-страницы могут содержать также код JavaScript, интерпретируемый локально на машине клиента. Этот код может инициировать еще один запрос, точно так же запрос может быть инициирован встроенными объектами, например изображениями.