Веб-сервер
Что такое веб-сервер
Веб-сервер - это компьютер, на котором хранятся файлы сайтов (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 год
Ниже представлены веб-серверы с наибольшим количеством пользователей по всему миру:
Apache 39.99%
Nginx 28.54%
IIS 10.27%
LiteSpeed 2.77%
Apache Traffic Server 0.51%
OpenGSE 0.41%
Phusion Passenger 0.35%
Apache Tomcat 0.15%
Netlify 0.12%
lighttpd 0.11%
Tengine 0.11%
Microsoft HTTPAPI 0.07%
Caddy 0.05%
Google App Engine 0.04%
gunicorn 0.02%
Google Web Server 0.02%
Amazon EC2 0.02%
JBoss Application Server 0.01%
Zope 0.01%
Lotus Domino 0.01%
В рамках дисциплины мы рассмотрим Nginx, Apache и IIS.
Далее поговорим об Nginx и Apache...
Last updated