Веб-сервер является обязательным и необходимым компонентом для работы любого веб-приложения. Если рассмотреть схему любого веб-приложения то она будет выглядеть следующим образом:
Веб-браузер служит для отображения данных и элементов управления, в нём формируются специальные запросы которые через компьютерную сеть передаются на сервер где происходит обработка данных.
Данные браузера, переданные через сеть, поступают в виде HTTP запроса на специальный компьютер (обычно так называют на хостинг).
Этот компьютер обычно называют сервером, чтобы не путаться я предлагаю называть его компьютер-сервер. А путаница возникает из-за того, что на таком сервере работают программы которые тоже называют серверами, например веб-сервер, сервер-СУБД, такие сервера можно называть сервер-прогарммы. В общем тут нужно угадывать по контексту.
Таким образом, на компьютер сервер поступает HTTP-запрос (или HTTPS) который обрабатывает специальная программа Веб-сервер. В вебсервере имеется реализация функционала протокола HTTP (и HTTPS) с помощью которой программа веб-сервер определяет какие действия необходимо совершить с поступившими данными и какой вернуть ответ.
Практически, больше половины запросов на Веб-сервера это запросы на получение фотографий, видел или каких то раннее созданных и заказачанны на компьютер сервер файлов. Использование протокола HTTP для доставки мультимеди контента пользователям является одним из самых простых, удобных и наглядных. Но современный интернет не возможен без динамического контента, а динамическим контентом является тот который либо невозможно либо нецелесообразно формировать заранее, например все страницы новостей, каталоги товаров, форумы и панели управления являются динамическим контнетом. За формирование динамического контента отвечают специальные веб-приложения, которые получив данные запроса браузера обрабатывают данные и формируют ответ который веб-сервер передаёт веб-браузеру и клиент сайта видит результаты своего запроса.
Таким образом на пути между пользователем и веб-приложением стоит как минимум две программы: веб-браузер и веб-сервер и это означает, что для разработки собственных веб-приложений необходимо освоить установку и настройку веб-сервера.
За десятки лет существования интернета появилось и погибло множество программ выполняющих функции веб-сервера. И сейчас одним их самых популярных, надёждых и функциональных веб-серверов является: Apache и Nginx. Можно сказать что именно на этих веб-сервера и работает вся видимая и невидимая часть интернета. Оба приложения смогут решить практически любую поставленную перед ними задачу, но я стал отдавать предпочтение веб-серверу Nginx по следующим причинам:
- это гораздо более молодой проект, а следовательно он не тащит за собой функционал который уже ни когда не потребуется современным приложениям, а значит съэкономит памяти на компьютере
- автор Nginx наш соотечественник и следовательно у веб-сервера хорошая документация
- и у этого сервера из коробки есть готовые решения для современных веб-приложений
В установке и настройке Nginx я буду использовать Ubuntu 16.04. В принципе, данное руководстве поможет и для более старой версии, только там несколько отличные пути размещения файлов. Итак, ставим веб-сервер Nginx
sudo apt-get install nginx
Вот и всё
Комментариев 0