Веб-сервер


Архитектура серверов фонда Викимедиа

Веб-сервер — сервер, принимающий HTTP-запросы от клиентов, обычно веб-браузеров, и выдающий им HTTP-ответы, как правило, вместе с HTML-страницей, изображением, файлом, медиа-потоком или другими данными.

Веб-сервером называют как программное обеспечение, выполняющее функции веб-сервера, так и непосредственно компьютер (см.: Сервер (аппаратное обеспечение)), на котором это программное обеспечение работает.

Клиент, которым обычно является веб-браузер, передаёт веб-серверу запросы на получение ресурсов, обозначенных URL-адресами. Ресурсы — это HTML-страницы, изображения, файлы, медиа-потоки или другие данные, которые необходимы клиенту. В ответ веб-сервер передаёт клиенту запрошенные данные. Этот обмен происходит по протоколу HTTP.

Дополнительные функции

Веб-серверы могут иметь различные дополнительные функции, например:

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

Программное обеспечение

На 2022 год наиболее распространённым веб-сервером, занимающим более 22% рынка[1], является Apache — свободный веб-сервер, наиболее часто используемый в UNIX-подобных операционных системах;

Некоторые другие известные веб-серверы:

  • IIS - сервер от компании Microsoft, распространяемый с ОС семейства Windows.
  • Nginx — свободный веб-сервер, разрабатываемый Игорем Сысоевым с 2002 года и пользующийся большой популярностью на крупных сайтах[2],[3]
  • lighttpd — свободный веб-сервер, разрабатываемый с расчётом на скорость и защищённость, а также соответствие стандартам.
  • Google Web Server — веб-сервер, разработанный компанией Google.
  • Resin — свободный веб-сервер приложений.
  • Cherokee — свободный веб-сервер, управляемый только через web-интерфейс.
  • Rootage — веб-сервер, написанный на Java.
  • THTTPD — простой, маленький, быстрый и безопасный веб-сервер.
  • Open Server — бесплатная программа с графическим интерфейсом использует множество исключительно свободного программного комплекса.
  • H2O — свободный быстрый веб-сервер, написанный на C.
  • nghttp2 — веб-сервер, встроенный в Node.js.
  • Go HTTP — веб-сервер, встроенный в Go.

Клиенты

В качестве клиентов для обращения к веб-серверам могут использоваться различные программы и устройства:

Отличие веб-сервера от сервера приложений

Основное отличие веб-сервера от сервера приложений заключается в том, что веб-сервер предназначен для обслуживания статических страниц, например HTML и CSS, тогда как сервер приложений отвечает за генерацию динамического содержимого путём выполнения кода на стороне сервера, например, JSP, EJB и т. п.

См. также

Примечания

  1. April 2022 Web Server Survey (англ.). Netcraft (27 апреля 2022). Дата обращения: 5 мая 2022. Архивировано 27 апреля 2022 года.
  2. Интернет 2009 в цифрах и фактах. Habrahabr (24 января 2010). Дата обращения: 17 июня 2010. Архивировано 15 июля 2012 года.
  3. February 2011 Web Server Survey (англ.). Netcraft (15 февраля 2010). Дата обращения: 20 февраля 2011. Архивировано 25 августа 2011 года.

Ссылки