Что такое сайт

Что такое сайт

Как выглядит сайт с точки зрения посетителя — это вы, конечно, знаете, т.к. сами наверняка посещали сайты. Вот, например, сайт яндекса:

site-yandex

Бывают совсем маленькие сайты всего из одной страницы; но обычно сайты состоят из нескольких страниц. По ссылкам можно переходить с одной страницы на другую, в том числе — на страницы на других сайтах.

Как это работает

Где-то далеко, в другом городе, или даже в другой стране, в специальном помещении, которое называется дата-центр, на специальных стеллажах стоит множество компьютеров. Это серверы:

servers

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

web-server - New Page

Когда вы со своего компьютера (или телефона) заходите на какой-то сайт, ваш компьютер отправляет по сети запрос, что-то вроде «хочу посмотреть сайт vk.com, страницу vasya». Этот запрос, примерно как обычное письмо, пересылается из одного пункта в другой, потом в третий, и, наконец, попадает в нужный дата-центр, к тому компьютеру, на котором расположен сайт vk.com. Его программа веб-сервер принимает запрос, берет у сайта страницу vasya, и отправляет ее обратно. Опять через множество промежуточных пунктов этот ответ добирается до вашего компьютера, и появляется на экране. Все происходит очень быстро — так, что вы даже не догадываетесь, насколько хитро там все устроено.

vk-vasya

Разумеется, это очень упрощенная картина. Понимающие люди наверняка ухмыльнулись, представив себе, как сайт ВКонтакте (vk.com) пытается втиснуться всего лишь в один компьютер, да еще оставить там место другим сайтам — хотя на самом деле ВКонтакте занимает несколько тысяч серверов в нескольких датацентрах. Но это его личные проблемы.

Адрес

Адрес страницы — это то, что вы видите в адресной строке браузера:

address-bar

Например, там написано: «http://vk.com/raceexpress». Давайте разберем, что это обозначает.

«http://» — это протокол, он нам не интересен. Грубо говоря, это означает «интернет». Еще может быть «https://» (с буквой s в конце) — это тоже интернет, но защищенное и зашифрованное соединение, для передачи секретных данных. Если вы зайдете в свой интернет-банк, и увидите, что в адресной строке протокол «http://» — значит, у вас очень плохой интерне-банк, однозначно.

Кстати, некоторые браузеры даже не показывают протокол http в адресной строке — например, Google Chrome. Потому что он нам не интересен.

«vk.com» — это адрес сайта, или домен. Все, что лежит между протоколом, и косой чертой (если она есть) — это домен. Если там одна точка (например — vk.com, google.ru, microsoft.com) — то это домен второго уровня, он куплен у специальной компании — регистратора домена, и это солидно. Еще к доменам второго уровня слева часто добавляется «www.» (например — www.yandex.ru). Это не убавляет солидности, просто раньше так делали, чтобы указать на программу-вебсервер (в отличие от FTP-сервера, например — ftp.yandex.ru). Сейчас префикс «www» часто опускают, т.к. особой необходимости в нем уже нет.

Если в домене 2 точки, то это домен третьего уровня. Например: «http://vasya.ucoz.ru/» — этот домен принадлежит сервису uCoz (бесплатный конструктор сайтов), и на нем некто vasya сделал свой сайт. Это уже не так солидно.

Вернемся к нашему адресу «http://vk.com/raceexpress». После домена идет адрес страницы внутри сайта, если его нет — значит будет открыта главная страница. В нашем случае там написано «raceexpress» — то есть, запрашивается страница эвакуатора RaceExpress на сайте ВКонтакте. Адрес страницы может быть именем файла (index.html, contacts.php и т.д.), может содержать имена каталогов, разделенные наклонной чертой (articles/about-something.html, catalog/phone/cell/nokia/nokia-3310.html), может содержать вопросительный знак, после которого идут дополнительные параметры (map.php?ll=65.702939%2C57.159989&spn=0.432587%2C0.130026&z=12&l=map) и всякое прочее. Много чего может содержать адрес страницы, но это тоже не интересно. Не заморачивайтесь.

Сайт изнутри

Итак, сайт сидит внутри компьютера-сервера, а программа-вебсервер отдает его страницы по запросу. Что собой представляет сайт? Об этом можно рассказывать очень и очень долго, потому что сайты могут быть сделаны множеством разных способов. Самый простой — так называемый статический сайт. Каждая страница сайта лежит на диске в виде готового файла, и веб-сервер, получив запрос, просто отправляет этот файл обратно. Страницы представляют собой файлы в формате HTML; кроме того, используются файлы CSS, описывающие внешний вид элементов, картинки (файлы GIF, PNG, JPG, и так далее), видео, аудио, и многое многое другое. Файлы HTML описывают содержимое страниц, и содержат ссылки на все остальные файлы. Это выглядит примерно так:

html

Другое дело динамические сайты. Они, в сущности, представляют собой программу, которую выполняет веб-сервер, когда получает запрос. Результат выполнения программы отсылается в качестве ответа — в виде HTML, CSS, картинок, и т.д. То есть у статических сайтов ответ всегда один и тот же — если у него тысячу раз спросят страницу index.html, он тысячу раз вернет одну и ту же страницу. Динамический сайт может добавить на страницу прогноз погоды, например, или свежие новости, или какую-то информацию из базы данных — и ответы будут отличаться друг от друга, хотя адрес страницы один и тот же. Типичным примером динамического сайта является форум — обновив страницу, вы увидите, что на ней появились новые сообщения. Вообще подавляющее большинство сайтов динамические:

car72

CMS

Content management system (CMS) — система управления контентом (содержимым). Что это значит? В сущности, это такой сайт, который можно редактировать с помощью его же самого. Сначала CMS устанавливается и настраивается обычным образом — т.е. ее файлы копируются на сервер, создается база данных, настраиваются файлы конфигурации — а потом можно добавлять новое содержимое уже через веб-интерфейс:

wordpress

Самые популярные CMS — это WordPress, Joomla, и Drupal. Преимущество CMS в том, что когда вебмастер вам сделает и настроит сайт — дальше вы уже самостоятельно сможете с ним работать, добавлять новости, акции, менять цены, и т.д.

Конструкторы сайтов

Конструкторы сайтов — это следующий шаг после CMS. Т.е. кто-то уже сделал CMS на своем сайте, и предлагает всем желающим создавать там свои сайты внутри. Обычно конструкторы позволяют привязать к такому сайту домен второго уровня (т.е. вместо vasya.ucoz.ru сделать vasya.ru), либо предлагают купить такой домен у них, втридорога. В общем, получается вполне настоящий сайт, но бесплатные возможности будут так или иначе ограничены. Например, на сайте будет реклама, которую можно убрать только за дополнительную плату, или нельзя будет вставлять свои виджеты (скажем, сервис отзывов и комментариев), или сайт будет работать медленно и с ограничением трафика… Преимуществом конструкторов является то, что не нужны специальные знания — практически любой уверенный пользователь компьютера сможет сделать себе простой сайт. Но придется либо платить, либо терпеть ограничения.