Веб-сервер (Web Server): для чего он нужен, как устроен и как работает. Что такое веб-сервер Как работает веб сервер

27.06.2020

Для чего нужен сервер и когда стоит покупать его для своего бизнеса?

Для начала уточним, что сервер – это оборудование, которое использует серверное программное обеспечение . Он оптимизирован для работы с другими компьютерами (клиентами). Клиентами сервера могут быть компьютеры, телефоны, факсы, принтеры и все другие устройства, которые подключаются к интернету. Чем больше информации Вы планируете хранить на серверном оборудовании, тем мощнее должен быть сервер. Для каких целей арендуют сервер? Подробнее в материале на блоге ГиперХост .

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

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

Если Ваш бизнес работает на перспективное будущее, следует задуматься о выборе сервера.

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

Почтовый сервер принимает непосредственное участие в принятии и отправлении электронной почты. Вы отправляете письмо на электронный адрес, но оно сначала попадает на почтовый сервер, где происходит его обработка. Индексируется адрес получателя и письмо отправляется. В этом процессе участвует несколько почтовых серверов, которые обмениваются необходимой информацией. О популярных почтовых серверах Exim, Postfix, Sendmail можно прочитать в статье.

Файловый сервер хранит все файлы сети, к которым происходит доступ с других компьютеров. Для обмена файлами используется протокол FTP, с помощью которого пользователь может загружать все файлы в сети (картинки, видео, аудио). Файловым сервером можно считать любой компьютер, который имеет много дискового пространства для хранения информации.

Веб-сервер – сервер подключенный к Интернету и принимающий запросы пользователей по протоколу HTTP. Все сайты, который есть в сети, расположены на веб-серверах. Такой вид сервера – непосредственный проводник между сайтом и клиентами. Веб-сервер получает запрос, далее обрабатывает его и выдает результат (файловый или гипертекстовый). По своей сути веб-хостинг и веб-сервер понятия идентичны. Веб сервер Nginx и apache – что это и как работает данная связка? Ответ на данный вопрос .

Сервера баз данных. В большинстве все программы используют базы данных. Данный вид серверов обеспечивают доступ к данным с помощью системы клиент-сервер. Самыми популярными серверами баз данных являются SQL SERVER (Microsoft), SQL BASE SERVER, Oracle SERVER (Oracle Corporation), IBM DB2, Informix. Они работают на платформе различных ОС, таких как MSDOS, OS/2, Xenix, Unix.

Прокси-сервер – можно сказать, что это тот же веб-сервер, но он осуществляет запросы в сети вместо посетителя. Это по сути комплекс программ. Вы подключаетесь к прокси-серверу, даете ему запрос, а он ищет информацию вместо Вас, в некоторых случаях изменяя ее. Работа с прокси-сервером позволяет защитить компьютер клиента от вредоносных программ, быть анонимным в сети, ограничить доступ к определенным ресурсам или наоборот обойти запреты. Простая установка прокси сервера на свой VPS за 1 минуту, подробнее .

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

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

Причины, по которым можно определить, нужно ли для вашей фирмы?

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

От правильности выбора сервера зависит успешная работа компании, ведь сервера помогают организовать бесперебойное функционирование предприятия, и связывают отдельные подразделения, например, те, которые находятся в разных городах.

Специалисты компании HyperHost с удовольствием подберут наиболее оптимальный физический или , по всем параметрам, сервер и обеспечат стабильность Ваших проектов. Сравнение также поможет сделать вам верный выбор и правильно подобрать услугу в зависимости от поставленной цели.

Необходимо выбрать операционную систему для работы сервера? Данная поможет вам сделать правильный выбор и оценить все возможности каждой ОС. О панелях управления для серверов с Linux .

42787 раз(а) 17 Сегодня просмотрено раз(а)

Если Вы напечатаете в адресной строке вашего браузера http://www.сайт/how-web-server-work/ и нажмете клавишу Enter - эта страничка нашего Веб-сайта появится на экране.

На самом базовом уровне произошло следующее: Ваш браузер сформировал подключение к Веб-серверу, отправил запрос на получение Веб-страницы страницы и получил ее.

Теперь немного подробнее:

URL состоит из трех частей:

1. Протокола (http)

2. Имени сервера (www.сайт)

3. Адреса страницы (how-web-server-work)

Браузер обращается к серверу доменных имен, чтобы перевести имя сайта www.сайт в IP-адрес , который он использует, чтобы подключиться к серверной машине. Браузер затем образует соединение с Веб-сервером по указанному IP-адресу на порт 80 или любой другой, если так задумано (Мы обсудим порты позже в этой статье).

Следуя протоколу HTTP, браузер послал запрос на сервер, запрашивая файл http://www.сайт/how-web-server-work/

Обратите внимание, что файлы cookie также могут быть отправлены от браузера к серверу.

В ответ сервер сгенерировал динамическую Веб-страницу и послал обратно HTML текст для отображения этой страницы в Вашем браузере. Файлы cookie также могут быть отправлены от сервера к браузеру в заголовке страницы. Браузер читает HTML-теги и формирует вывод Веб-страницы на экране.

Интернет

Так что же такое «Интернет»? Интернет представляет собой сотни миллионов компьютеров, связанные вместе в компьютерную сеть . Сеть позволяет всем компьютерам взаимодействовать друг с другом. Домашний компьютер может быть связан с сетью Интернет при помощи самых разных способов и устройств – начиная с примитивного модема для телефонной линии, закачивая соединением по локальной сети (LAN ) с Интернет-провайдером (ISP ).

Крупные Интернет-провайдеры поддерживают волоконно-оптические линии для всей страны или региона. Магистральные сети проложены во всем мире, соединенные по волоконно-оптическим линиям, подводным кабелям или спутниковым каналам. Таким образом, каждый компьютер в сети Интернет подключен к любому другому компьютеру в сети Интернет.

Клиенты и Серверы

В общем, все компьютеры в Интернет, можно разделить на две категории: серверы и клиенты. Компьютеры, обеспечивающие сервисы (такие как Веб-серверы, серверы FTP, облачные сервисы) для других машин являются серверами . Машины, которые используются для подключения к этим услугам — клиенты . При подключении к Google , чтобы выполнить поисковый запрос или воспользоваться каким-либо его сервисом, Google предоставляет свой компьютер (возможно, целый кластер мощных компьютеров) для обслуживания Вашего запроса. Таким образом, Google предоставляет сервер. Ваша машина тоже может предоставлять услуги кому-то в Интернете. Таким образом, пользовательская машина, обычно, является клиентом, хотя может становиться и сервером, в случае необходимости.

Сервер может предоставить одну или несколько услуг в Интернете. Например, на компьютере-сервере может быть установлено программное обеспечение, позволяющее ему выступать в качестве Веб-сервера, e-mail сервера и FTP сервера. Компьютеры-клиенты, которые присоединяются к серверу, направляют свои запросы к специальному программному обеспечению, работающему на общем компьютере-сервере. Например, если вы используете Веб-браузер на вашем компьютере, он будет «общаться» с Веб-сервером на компьютере-сервере. Ваше e-mail приложение будет «говорить» с сервером электронной почты, и так далее.

IP-адреса

Чтобы соединить все эти машины в сеть, у каждого компьютера в Интернете есть уникальный адрес, называемый IP-адрес . Типичный IP-адрес выглядит так:

Четыре числа в IP-адресе называются октеты потому что они могут принимать значения между 0 и 255 или 2 8 вариантов значений.

Каждый компьютер в Интернет имеет свой уникальный IP-адрес. Сервер имеет статический IP-адрес, который меняется редко. Домашний компьютер часто имеет IP адрес, назначенный провайдером, когда машина соединяется с ним. Этот IP-адрес является уникальным для этой сессии, но может оказаться другим в следующий раз. Таким образом, ISP, нужен только один IP адрес для каждого маршрутизатора, которые он поддерживает, а не для каждого клиента.

Если вы работаете на Windows машине, вы можете просмотреть множество информации об Интернете на вашем компьютере, включая ваш текущий IP-адрес и имя хоста, с помощью команды ipconfig . На UNIX-машине, надо набрать nslookup в командной строке для отображения IP-адреса машины.

Доменные имена

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

Имя www.сайт на самом деле состоит из трех частей:

1. Имя World Wide Web (www). На самом деле можно обходиться и без явного указания «www», хотя, формально, это будет другая сеть.

2. Доменное имя (qriosity)

3. В зоне домена верхнего уровня (ru)

Доменными именами управляют Регистраторы доменных имен . Регистраторы создают доменные имена верхнего уровня и гарантируют, что все имена в зоне верхнего уровня домена является уникальным. Регистратор также предоставляет контактную информацию для каждого доменного имени и запускает сервис whois , указывающий на владельца домена. Имя хоста создается владельцем домена.

Серверы доменных имен

Набор серверов, называемых серверы доменных имен (DNS) сопоставляет удобочитаемые имена в IP-адреса. Эти серверы содержат простые базы данных, содержащие имена и IP-адреса, и они распределены по всему Интернету. Большинство отдельных компаний, Интернет-провайдеров и крупных университетов поддерживают малые DNS. Существуют также центральные DNS, которые используют данные, поставляемые Регистраторами доменных имен.

При вводе URL-адреса http://www..сайт, передает его на сервер доменных имен, сервер возвращает правильный IP-адрес для www.сайт. Целый ряд серверов имен может быть вовлечен в то, чтобы получить правильный IP-адрес.

Итак, повторим прочитанное: Интернет состоит из миллионов машин, каждая с уникальным IP-адресом. Многие из этих машин – серверы. Это означает, что они предоставляют услуги другим компьютерам в Интернет. Многие из этих серверов являются серверами электронной почты, Веб-серверами, FTP-серверами, серверами облачных сервисов.

Порты

Любой сервер делает свои услуги доступными через Интернет с помощью пронумерованных портов , по одному для каждой службы, доступной на сервере. Например, есть компьютер-сервер, на котором запущен Веб-сервер и FTP-сервер. Веб-сервер, как правило, будет доступен на порту 80, а FTP-сервер будет доступен на порту 21. Клиенты подключаются к сервису на определенный IP адрес и на определенный порт.

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

Если сервер принимает соединения на порту от внешнего мира, и если брандмауэр не защищает порты, вы можете подключиться к заранее обусловленному порту с любого компьютера в Интернет и воспользоваться услугой. Обратите внимание, что нет ничего, что заставляет Вас, к примеру, держать Веб-сервер на порту 80. Если вы установили свой сервер и загрузили программное обеспечение Веб-сервера на нем, вы могли бы поставить Веб-сервер на порту 999, или любом другом неиспользуемом порту. Затем, если, например, Ваша машина будет известна как xxx.yyy.com то к ней могут подключаться с URL http://xxx.yyy.com:999 - «:999» явно указывает номер порта, по которому можно добраться до вашего Веб-сервера. Если порт не указан, то браузер просто предполагает, что Веб-сервер доступен с помощью хорошо известного порта 80.

Протоколы

Как только клиент подключен к службе на данном порту, он обращается к сервису с помощью специального протокола . Протокол — это набор соглашений логического уровня, позволяющий программам обмениваться данными. Для совместной работы компьютеров в сети Интернет используется семейство протоколов TCP/IP . Веб-сервер использует протокол HTTP.

Дополнительно: Безопасность

Вы можете видеть из этого описания, что Веб-сервер это довольно простой фрагмент программного обеспечения. Он принимает имя файла, отправленного с помощью команды GET, получает файл и отправляет его в браузер. Даже если брать в расчет весь код для обработки портов, программа простейшего Веб-сервера состоит не более, чем из 500 строк кода. Полномасштабные Веб-серверы являются более сложными, но в своей основе тоже очень просты.

Большинство серверов устанавливают некоторый уровень безопасности к процессам обслуживания. Простейший вариант – запрос логина и пароля для получения доступа к серверу. Более продвинутые серверы добавляют дополнительную безопасность, путем установления зашифрованной связи между сервером и браузером, так что конфиденциальная информация (например, номера кредитных карт) может быть выслана по Интернету.

Это действительно все, что нужно Веб-серверу, который обслуживает стандартные, статические Веб-страницы . Статические страницы – это страницы, которые не изменяются, если вебмастер сам не отредактирует их.

Дополнительно: Динамические страницы

Что такое динамические Веб-страницы ? Например:

1. Любая гостевая книга позволяет ввести сообщение в HTML-форме, и выводит новые и старые записи автоматически.

2. Любой поисковик позволяет ввести ключевые слова в HTML-форме запроса, и тогда он динамически создает страницу, на основе поиска информации по этим ключевым словам.

Во всех этих случаях, Веб-сервер осуществляет не просто «поиск файла». Он обрабатывает информацию и генерирует страницы в зависимости от специфики запросов. Почти во всех случаях, Веб-сервер, использует так называемые скрипты — программный код, написанный на PHP, Perl, Java и других языках программирования, чтобы совершить этот процесс.

Страницы нашего сайта — тоже являются динамическими, созданными при помощи PHP с использованием баз данных MySQL.

Внимание! Данная программа не является обязательной. Если Вы решили ее использовать, то рекомендуем поручить установку и настройку данной программы специалисту, например, администратору сети.

Скачать программу можно с сайта по следующему адресу:

Общее описание

Сервер предназначен для обслуживания баз данных в формате DВase и Paradox с использованием драйверов BDE фирмы Inprise (Borland). Кроме того, он может выступать в роли Web-сервера.

При модификации базы (добавление, удаление, изменение) используется технология «клиент-сервер». Доступ к базе данных на чтение обеспечивается стандартными средствами BDE по технологии «файл-сервер». При этом клиентские программы открывают файлы базы данных только на чтение, а любое изменение данных осуществляет сервер.

Использование сервера позволяет избежать проблем, связанных с одновременным изменением базы несколькими пользователями через сеть. Сервер модифицирует базу в монопольном режиме. Благодаря этому обеспечивается надежное хранение и безопасная модификация данных.

Встроенный в программу Web-сервер позволяет организовать публикацию вашей информации в Intranet/Internet сети, а также обеспечивает удаленный контроль работы сервера.

Сервер может работать на компьютерах с установленной операционной системой Windows 95/98/2000/XP/Vista, Windows NT и настроенным протоколом TCP/IP . При работе под Windows NT, возможна установка сервера как сервиса.

Сервер может одновременно обслуживать несколько баз данных.

Контроль работы сервера может осуществляться дистанционно с помощью любого Web-браузера, например, Netscape Navigator, Microsoft Internet Explorer и т.п.

Установка сервера

Программа сервера может работать на любом компьютере в сети. Предварительно на этом компьютере необходимо установить и настроить BDE . Настройка BDE для сервера аналогична настройке BDE для работы Инфо-Бухгалтера (см. раздел Ошибка: источник перёкрестной ссылки не найден «Ошибка: источник перёкрестной ссылки не найден»).

Если база данных располагается на этой же машине, что и программа-сервер, то необходимо использовать команду SUBST (для Windows 95/98/2000/XP/7), так как название сетевого диска и путь к базе должны быть одинаковы для всех машин, в том числе и для машины с сервером.

Установите сервер на выбранную машину.

Вставьте дистрибутивный диск в привод CD-ROM и запустите файл InfoSrv203_setup. exe , располагающийся в директории \Setup\Infosvr\Server2 . Далее следуйте инструкциям программы установки.

После установки в каталоге с сервером будут содержаться следующие файлы и подкаталоги:

    ibserv32.exe – сервер программы Инфо-Бухгалтер;

    ibserv32.ini – файл настроек сервера;

    WWW – подкаталог Web-сервера.В каталоге WWW по умолчанию содержатся файлы:

    index.html – HTML-скрипт для отображения статистики работы сервера. В этом каталоге Вы можете размещать свои файлы, которые будут доступны по HTTP протоколу.

    stat.html – пример файла шаблона статистики работы Инфо-Бухгалтера.

В процессе работы сервера создаются файлы:

    ibserv.log – информация о работе сервера.

    ibserv.jrn – журнал работы сервера.

Журнал создается только в том случае, если в файле ibserv32.ini параметр sqlTrace =1.

Установка сервера в качестве сервиса Windows NT

Для регистрации сервера необходимо запустить программу ibserv32 с ключом /i ., т.е. ibserv32. exe /i .

После этого средствами Windows NT (значок «Службы» в «Панели управления») установить необходимый режим работы сервиса (автомат или вручную). Имя сервиса – «InfoBuhDBServer».

Внимание! Необходимым условием правильной работы программы является эквивалентность путей к базе данных, а также путей к файлу P doxusrs.net , на сервере и рабочей станции (использование команды SUBST невозможно). Одному из локальных дисков сервера необходимо присвоить букву, совпадающую с названием сетевых дисков на рабочих станциях. Для правильного определения локальных и сетевых путей необходимо открыть корень этого диска на полный доступ, а с рабочих станций подключить корень этого диска в качестве сетевого диска.

Обязательно необходимо определить учетную запись, под которой будет запускаться сервер. В данной учетной записи должен быть указан пользователь с необходимыми полномочиями, например, Администратор.

Для удаления сервиса остановите его средствами Windows NT (Пункт «Службы» в «Панели управления»), а затем запустите ibserv32 с ключом /u .

Настройка сервера

Настройка сервера осуществляется посредством файла ibserv32.ini .

Рассмотрим назначение секций этого файла:

Запуск сервера

Запуск сервера осуществляется запуском файла ibserv32.exe . Если сервер установлен, как сервис для Windows NT, то запуск осуществляется автоматически или вручную с помощью значка «Службы» в «Панели управления».

Контроль работы сервера

Контроль работы сервера осуществляется с помощью консоли сервера:

Рис 19. Сервер программы «Инфо-Бухгалтер».

Внимание! При установке сервера в качестве сервиса Windows NT консоль недоступна.

Контроль работы сервера может также осуществляться удаленно при помощи Web-браузера (Netscape Navigator или Microsoft Internet Explorer).

Дополнение к HTML для контроля сервера

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

##SERVREGIM# – режим работы сервера

##SERVOSVERSION# – версия ОС сервера

##SERVVERSION# – версия сервера

##SERVTIME# – текущее время на сервере

##LONGTIME# – время работы сервера

##IBZAPROS# – количество выполненных запросов

##IBBASE# – количество открытых баз

##IBERROR# – возникло ошибок

В каталоге WWW директории, где установлена программа, находится файл stat.html , содержащий пример файла шаблона статистики работы Инфо-Бухгалтера.


Рис 20. Файл статистики stat.html .

Настройка программы для работы с сервером

На компьютере с установленным Инфо-Бухгалтер в каталоге Windows (или другом каталоге, в который установлен Windows) находится файл ibw.ini . В этот файл в секцию необходимо внести следующие изменения:

После изменения параметров в этом файле, необходимо перезагрузить программу и, если изменился параметр UseServer , то удалить файлы Eventnet.db и Eventnet.px во всех используемых базах данных.

Внимание!

  • Нельзя одновременно работать с одной базой данных пользователям, использующим и не использующим сервер;
  • При переходе к использованию сервера и обратно (параметр UseServer ) необходимо уничтожать файлы Eventnet.db и Eventnet.px во всех используемых Вами базах. Невыполнение этого требования может привести к непредсказуемым последствиям;
  • При использовании сервера невозможна проверка базы данных.
  • 283 просмотра

Контроль ошибок при написании кода

Мониторинг сайта в поисковых системах

Создание эскиза будущего проекта

Онлайн-сервисы для решения задач дизайна и веб-разработки

  • Работа с сервером

Установка сервера Apache

Установить и настроить локальный сервер на своем компьютере, благодаря Denver и ему подобным программам стало довольно просто. Об этом написано много, да и сам процесс установки интуитивно понятен. Но можно настроить сервер и без помощи вспомогательного софта, установив только то, что требуется в работе. В этой статье поговорим о том, как установить сервер Apache на свой компьютер и настроить его для дальнейшей работы.

Установка и настройка PHP

Когда все работы по установке и кофигурированию сервера Apache остались позади, можно приступать к установке на компьютер PHP и его настройке для дальнейшей работы.

Установка и настройка сервера баз данных (MySQL)

Если Вы собираетесь делать сайты с использованием баз данных (а так скорее всего и будет), то для полноценной работы помимо Apache и PHP понадобится установить и настроить сервер баз данных - в нашем случае это MySQL. Об этом и будет идти речь в данной статье.

Установка и настройка phpMyAdmin

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

В этой статье мы узнаем, что из себя представляют веб-серверы, как они работают, и почему они так важны.

Введение

Понятие « веб-сервер» может относиться как к аппаратной начинке, так и к программному обеспечению. Или даже к обеим частям, работающим совместно.

  1. С точки зрения "железа", « веб-сервер» - это компьютер, который хранит файлы сайта (HTML-документы, CSS-стили, JavaScript-файлы, картинки и другие) и доставляет их на устройство конечного пользователя (веб-браузер и т.д.). Он подключен к сети Интернет и может быть доступен через доменное имя, подобное mozilla.org .
  2. С точки зрения ПО, веб-сервер включает в себя несколько компонентов, которые контролируют доступ веб-пользователей к размещенным на сервере файлам, как минимум - это HTTP-сервер . HTTP-сервер - это часть ПО, которая понимает (веб-адреса) и HTTP (протокол, который ваш браузер использует для просмотра веб-страниц).

На самом базовом уровне, когда браузеру нужен файл, размещенный на веб-сервере, браузер запрашивает его через HTTP-протокол. Когда запрос достигает нужного веб-сервера ("железо"), сервер HTTP (ПО) принимает запрос, находит запрашиваемый документ (если нет, то сообщает об ошибке ) и отправляет обратно, также через HTTP.

Статический веб-сервер , или стек, состоит из компьютера ("железо") с сервером HTTP (ПО). Мы называем это « статикой» , потому что сервер посылает размещенные файлы в браузер « как есть» .

Динамический веб-сервер состоит из статического веб-сервера и дополнительного программного обеспечения, чаще всего сервера приложения и базы данных . Мы называем его « динамическим» , потому что сервер приложений изменяет исходные файлы перед отправкой в ваш браузер по HTTP.

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

Активное изучение

Активное изучение пока не доступно. .

Погружаемся глубже

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

Хостинг файлов

Прежде всего, веб-сервер должен содержать файлы веб-сайта, а именно все HTML-документы и связанные с ними ресурсы, включая изображения, CSS-стили, JavaScript-файлы, шрифты и видео.

Технически, вы можете разместить все эти файлы на своем компьютере, но гораздо удобнее хранить их на выделенном веб-сервере, который:

  • всегда запущен и работает
  • всегда подключен к Интернету
  • имеет неизменный IP адрес (не все провайдеры предоставляют статический IP-адрес для домашнего подключения)
  • обслуживается третьей, сторонней компанией

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

Как только вы решили проблему с хостингом, вам понадобится только загрузить свои файлы на ваш веб-сервер .

Связь по HTTP

Во-вторых, веб-сервер обеспечивает поддержку HTTP (англ. H ypert ext T ransfer P rotocol - гипертекстовый транспортный протокол ). Как следует из названия, HTTP указывает, как передавать гипертекст (т.е. связанные веб-документы) между двумя компьютерами.

Протокол представляет собой набор правил для связи между двумя компьютерами. HTTP является текстовым протоколом без сохранения состояния.

Текстовый Все команды являются простым человекочитаемым текстом. Не сохраняет состояние Ни клиент, ни сервер не помнят о предыдущих соединениях. Например, опираясь только на HTTP, сервер не сможет вспомнить введенный вами пароль или на каком шаге транзакции вы находитесь. Для таких задач, вам потребуется сервер приложения. (Мы остановимся на этих технологиях в следующих статьях.)

HTTP задает строгие правила взаимодействия клиента и сервера. Мы рассмотрим сам протокол HTTP в технической статье немного позднее. Пока достаточно знать об этих правилах:

  • Исключительно клиенты могут производить HTTP-запросы, и только на сервера . Сервера способны только отвечать на HTTP-запросы клиента .
  • При запросе файла по HTTP, клиент должен сформировать файловый .
  • Веб-сервер должен ответить на каждый HTTP-запрос, по крайней мере сообщением об ошибке.

На веб-сервере HTTP-сервер отвечает за обработку входящих запросов и ответ на них.

  1. При получении запроса, HTTP-сервер сначала проверяет, существует ли ресурс по данному URL.
  2. Если это так, веб-сервер отправляет содержимое файла обратно в браузер. Если нет, сервер приложения генерирует необходимый ресурс.
  3. Если ничто из этого не возможно, веб-сервер возвращает сообщение об ошибке в браузер, чаще всего “404 Not Found”. (Это ошибка настолько распространена, что многие веб-дизайнеры тратят большое количество времени на разработку 404 страниц об ошибках .)

Статический и Динамический контент

Грубо говоря, сервер может отдавать статическое или динамическое содержимое.« Статическое» означает « отдается как есть» . Статические веб-сайты делаются проще всего, поэтому мы предлагаем вам сделать свой первый сайт статическим.

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

Возьмем для примера страницу, которую вы сейчас читаете. На веб-сервере, где она хостится, есть сервер приложения, который извлекает содержимое статьи из базы данных, форматирует его, добавляет в HTML-шаблоны и отправляет вам результат. В нашем случае, сервер приложения называется Kuma , написан он на языке программирования Python (используя фреймворк Django). Команда Mozilla создала Kuma для конкретных нужд MDN, но есть множество подобных приложений, построенных совершенно на других технологиях.

Существует так много серверов приложений, что довольно трудно предложить какой-то один. Некоторые серверы приложений заточены под определенные категории веб-сайтов, такие как блоги, вики-страницы или интернет-магазины; другие, называемые CMSs (системы управления контентом), более универсальны. Если вы создаете динамический сайт, потратьте немного времени на выбор инструмента, который соответствует вашим потребностям. Если вы не хотите изучать веб-программирование (хотя это увлекательно само по себе!), то вам не нужно создавать свой собственный сервер приложения. Это будет изобретением очередного велосипеда.

Следующие шаги

Теперь, когда вы познакомились с веб-серверами, вы можете:

  • прочитать насколько сложно делать что-либо в веб
  • узнать больше о разнообразии ПО, которое может пригодиться для создания веб-сайта
  • двигаться к практике: например, .