Основные понятия
Для понимания принципов работы веб-сервисов следует иметь в виду следующие понятия:
- браузер - программа-клиент для просмотра веб-страниц;
- веб-страница - электронный документ, присылаемый в браузер с веб-сервера; веб-страница может содержать таблицы, изображения, интерактивные элементы, гиперссылки на другие документы и ресурсы и т.п.;
- гиперссылка - интерактивный элемент веб-страницы, с помощью которого пользователь может запросить другой документ с любого веб-сервера, подключенного ко Всемирной паутине; пример гиперссылки -
https://yandex.ru/index.html
, где https - протокол передачи данных,yandex.ru
- адрес сервера,index.html
- имя документа на сервере; - веб-сервер - программа, передающая по запросу веб-страницы браузеру и имеющая во Всемирной паутине собственный адрес (URI);
- Всемирная паутина - совокупность подключенных к сети Интернет веб-серверов, способных взаимодействовать посредством гиперссылок.
Рисунок 1. Обмен запросами и ответами между браузером и сервером. Автор24 — интернет-биржа студенческих работ
К веб-серверу могут одновременно обращаться несколько клиентов.
История Всемирной паутины
В 1989 году исследователь CERN Тим Бернерс-Ли разработал комплекс информационных технологий, предполагающих публикацию в Интернете или локальной компьютерной сети гипертекстовых документов. Проект получил название World Wide Web (www, "Всемирная паутина"). Новаторство заключалось в том, что хранящиеся на независимых друг от друга серверах веб-страницы могли ссылаться друг на друга с помощью ссылок и специальных адресов (URI). Для просмотра таких веб-страниц был разработан первый в мире браузер (он назывался Mosaic), для их составления и форматирования - язык HTML, а для обмена запросами между браузером и сервером - протокол HTTP.
Язык разметки HTML
HTML не является языком программирования. Он предназначен для форматирования текстовых документов, т.е. придания им дополнительной наглядности и интерактивности посредством выделения заголовков, параграфов, вставки изображений, таблиц, гиперссылок и т.п. Разметка производится с помощью тэгов - синтаксических конструкций из угловых скобок. Внутри тэгов могут быть указаны атрибуты, дополняющие элементы документа специфическими свойствами: цвет, размер, адрес и т.д.
Рисунок 2. Простейший HTML-документ. Автор24 — интернет-биржа студенческих работ
В этом примере внутри тэгов h1
заключен заголовок. В браузере он будет показан крупнее, чем основной текст. Два параграфа (тэги p
) будут отображены с небольшим отступом друг от друга, как это делается в бумажных книгах. В первом параграфе содержится фрагмент, который будет показан курсивом, т.е. особо выделен наклоном и начертанием букв (тэги i
). Во втором параграфе содержится гиперссылка, ограниченная тэгами a
. Внутри открывающего тега содержится атрибут href,
после которого знак равенства и в кавычках адрес, по которому браузер запросит следующий документ, если пользователь нажмет на особым образом оформленную браузером ссылку.
PHP как средство дополнительной обработки документов на стороне сервера
В первоначальной версии Всемирной паутины веб-серверы раздавали веб-страницы в неизменном виде всем обратившимся к ним клиентам. Со временем возникла потребность в индивидуализации ответов на запросы пользователей. Например, можно поздравить пользователя с днем рождения, если текущая дата совпадает с той, которая указана в его учетной записи. Такие страницы называют динамическими, в отличие от неизменных статических.
Возникло много технологий, позволяющих формировать веб-страницы на стороне сервера в соответствии с предпочтениями и особенностями поведения пользователя. Одной из самых популярных стал язык PHP, созданный в 1994 г. Расмусом Лендорфом.
PHP позволяет серверу активно взаимодействовать с пользователем, занося в базу данных информацию о нем и, наоборот, извлекать из доступных ресурсов информацию, интересующую пользователя. Этим возможности PHP далеко не исчерпываются.
Достоинством PHP является то, что эта технология не нуждается в создании на стороне сервера дополнительных программ-скриптов, требующих отладки и усложняющих систему. Код, исполняемый на стороне сервера, встраивается непосредственно в HTML-документ (веб-страницу) с помощью специального синтаксиса. Сервер исполняет этот код при передаче веб-страницы браузеру.
Дополним наш пример PHP-фрагментом, вставляющим в документ текущую дату:
Рисунок 3. HTML-документ с фрагментом PHP-=кода. Автор24 — интернет-биржа студенческих работ
При передаче этого документа браузеру сервер обнаружит особый код - ?php
, предваряемый открывающей угловой скобкой. Сервер будет воспринимать дальнейший текст как программу, этот фрагмент нужно не передать браузеру, а выполнить. Окончание программы обозначается символом ?
и закрывающей угловой скобкой. После этой последовательност сервер продолжит передавать браузеру HTML-страницу в обычном режиме, нока не встретит следующий PHP-фрагмент.
Функция PHP echo
встраивает переданный ей аргумент в передаваемый браузеру документ. Аргументом в данном случае является строка, состоящая из фразы "Сегодняшняя дата: " и результата работы функции date("Y/m/d"), формирующей текущую календарную дату в удобном для человеческого восприятия формате. Следует обратить внимание на то, что PHP-фрагмент сразу же вставляет в html-документ и тэги p
. Для соединения (конкатенации) статических и динамически формируемого фрагментов строки используются точки. Результатом работы этого кода будет примерно такой документ:
Рисунок 4. Результат выполнения PHP-кода. Автор24 — интернет-биржа студенческих работ