|
нтерпретатора PHP. Оно призвано помочь лучше сис-
тематизировать сведения о конфигурировании PHP, полученные из других глав книги
(и увидеть реальный пример использования многих описанных директив).
ЧАСТЬ I. ОСНОВЫ WEB-ПРОГРАММИРОВАНИЯ
ЧАСТЬ II. ВЫБОР И НАСТРОЙКА ИНСТРУМЕНТАРИЯ. WEB-СЕРВЕР
APACHE
ЧАСТЬ III. ОСНОВЫ ЯЗЫКА PHP
ЧАСТЬ IV. СТАНДАРТНЫЕ ФУНКЦИИ PHP
ЧАСТЬ V. ПРИЕМЫ ПРОГРАММИРОВАНИЯ НА PHP
ЧАСТЬ VI. ПРИЛОЖЕНИЯ
ЧАСТЬ I.
ОСНОВЫ
WEB-ПРОГРАММИРОВАНИЯ
Глава 1
Принципы работы
Интернета
Протоколы передачи данных
Как и любая компьютерная сеть, Интернет основан на множестве компьютеров, со-
единенных друг с другом проводами, через спутниковый канал связи и т. д. Однако,
как известно, одних проводов для передачи информации недостаточно — передаю-
щей и принимающей сторонам необходимо также придерживаться ряда соглашений,
позволяющих строго регламентировать передачу данных, а также гарантировать, что
эта передача пройдет без искажений. Такой набор правил называется протоколом
передачи. Грубо говоря, протокол — это набор правил, который позволяет системам,
взаимодействующим в рамках Интернета, обмениваться данными в наиболее удобной
для них форме. Следуя сложившейся в книгах подобного рода традиции, я вкратце
расскажу, что же из себя представляют основные протоколы Интернета.
Иногда я буду называть Интернет Сетью с большой буквы, в отличие от "сети"
с маленькой буквы, которой обозначается вообще любая сеть, локальная или
глобальная. Тут ситуация сходна со словом "галактика": наша галактика назы-
вается Галактикой с прописной буквы, а "галактика" cо строчной буквы соот-
ветствует любой другой звездной системе подобных размеров. На самом деле,
сходство Сети и Галактики идет несколько дальше орфографии, и, я думаю,
вы скоро также проникнетесь этой мыслью.
Необходимость некоторой стандартизации возникла чуть ли не с самого момента
воз-
никновения компьютерных сетей. Действительно, подчас одной сетью объединены
компьютеры, работающие под управлением не только различных операционных сис-
тем, но нередко имеющие и совершенно различную архитектуру процессора, органи-
зацию памяти и т. д. Именно для того, чтобы обеспечивать возможность передачи
между такими компьютерами, и предназначены всевозможные протоколы. Давайте
рассмотрим этот вопрос чуть подробнее.
Разумеется, для разных целей существуют различные протоколы. К счастью, нам не
нужно иметь представление о каждом из них — достаточно знать только тот,
который
мы будем использовать в Web-программировании. Таковым для нас является прото-
кол TCP (Transmission Control Protocol — Протокол управления передачей данных),
а
Часть I. Основы Web-программирования 12
точнее, протокол HTTP (Hypertext Transfer Protocol — Протокол передачи
гипертек-
ста), базирующийся на TCP. Протокол HTTP как раз и задействуется браузерами и
Web-серверами.
Заметьте, что уже в самом начале первой главы я упомянул о том, что один
протокол
может использовать в своей работе другой. В мире Интернета эта ситуация
является
совершенно обычной. Чаще всего каждый из протоколов, участвующих в передаче
данных по сети, реализуется в виде отдельного и по возможности независимого
про-
граммного обеспечения или драйвера. Среди них существует некоторая иерархия,
когда один протокол является всего лишь "надстройкой" над другим, тот, в свою
оче-
редь — над третьим, и т. д. до самого "низкоуровневого" драйвера, работающего
уже
непосредственно на физическом уровне с сетевыми картами или модемами. На
рис. 1.1 приведена примерная схема того, что происходит при отправке запроса
брау-
зером пользователя на некоторый Web-сервер в Интернете. Прямоугольниками обо-
значены программные компоненты: драйверы протоколов и программы-абоненты
(последние выделены жирным шрифтом), направление передачи данных указано
стрелками. Конечно, в действительности процесс гораздо более сложен, но нам
сей-
час нет необходимости на этом останавливаться.
Обратите внимание, что в пределах каждой системы протоколы на схеме расположе-
ны в виде "стопки", один над другим. Такая структура обуславливает то, что
часто
|
|