Веб-сервер

Что такое веб-сервер

Веб-сервер - это компьютер, на котором хранятся файлы сайтов (HTML-документы, CSS-стили, JavaScript-файлы, различный контент), и который доставляет их на веб-браузер на устройстве конечного пользователя.

Также под веб-сервером понимается ПО, с помощью которого контролируется доступ веб-пользователей к размещенным на сервере файлам. Такое ПО называется HTTP-сервером и работает с URL-адресами и HTTP-протоколами.

Веб-серверы для публикации сайтов делятся на статические и динамические.

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

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

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

Для чего нужен веб-сервер

Основная задача веб-сервера - прием HTTP-запросов, их обработка и выдача HTTP-ответов на браузерах Google Chrome, Яндекс Браузер, Firefox, Internet Explorer, которые установлены в операционных системах пользователей.

Также к задачам веб-серверов относятся создание журналов ошибок и обращений к файлам (логов), аутентификация и авторизация пользователей, использование настроек для обработки файлов.

Типы веб-серверов

На сегодняшний день среди веб-серверов выделяют несколько ведущих систем:

  • Apache HTTP Server - кроссплатформенный веб-сервер (ПО) с открытым исходным кодом, который может быть установлен на любую ОС, включая Linux, Unix, FreeBSD, Mac OS X. Для поддержки JSP и J2EE в серверах Apache предусмотрены модули tomcat;

  • Microsoft IIS Windows Server - информационная интернет-служба, поставляемая по умолчанию в комплекте с ОС Windows. Этот сервер легко администрировать, однако он не имеет кроссплатформенности и открытого исходного кода;

  • Lighttpd - популярный веб-сервер для ОС FREEBSD, изначально разработанный под данную ОС, также может быть установлен на Windows, Mac OS X, Linux, Unix. Отличается безопасностью, гибкостью в настройке, кроссплатформенный и бесплатный;

  • Sun Java System - веб-сервер от Sun Microsystems, который подходит для средних и крупных веб-сайтов. Этот сервер бесплатный, но не обладает открытым исходным кодом. Однако он подходит для платформ Windows, Linux и Unix. Веб-сервер Sun Java System поддерживает различные языки, скрипты и технологии, необходимые для Web 2.0, такие как JSP, Java Servlets, PHP, Perl, Python, Ruby on Rails, ASP и Coldfusion

  • Nginx - веб-сервер, известный своей высокой производительностью, стабильностью, большим набором различных функций и небольшой требовательностью к используемым ресурсам. Nginx - это бесплатное решение с открытым исходным кодом. Широкий арсенал функций позволяет Nginx работать в качестве: обратного прокси-сервера; балансировщика нагрузки; HTTP-кеша; интерфейсного прокси;

  • X5 – сервер от компании IMatrix Corporation, сочетающий функции веб- и FTP-сервера. Обладает высокой скоростью, отличается компактностью и гибкостью, поддерживает различные популярные протоколы.

Глобальный рейтинг веб-серверов на 2023 год

Ниже представлены веб-серверы с наибольшим количеством пользователей по всему миру:

  1. Apache 39.99%

  2. Nginx 28.54%

  3. IIS 10.27%

  4. LiteSpeed 2.77%

  5. Apache Traffic Server 0.51%

  6. OpenGSE 0.41%

  7. Phusion Passenger 0.35%

  8. Apache Tomcat 0.15%

  9. Netlify 0.12%

  10. lighttpd 0.11%

  11. Tengine 0.11%

  12. Microsoft HTTPAPI 0.07%

  13. Caddy 0.05%

  14. Google App Engine 0.04%

  15. gunicorn 0.02%

  16. Google Web Server 0.02%

  17. Amazon EC2 0.02%

  18. JBoss Application Server 0.01%

  19. Zope 0.01%

  20. Lotus Domino 0.01%

В рамках дисциплины мы рассмотрим Nginx, Apache и IIS.

Далее поговорим об Nginx и Apache...

Last updated