Что такое веб сервер – что это такое, как он работает, как обеспечить доступ и что нужно, чтобы создать свой

Что такое виртуальный веб-сервер

Ссылка на видео о том, что такое веб-сервер

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

Давайте будем разбираться, что это такое и зачем это нужно.

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

1 компьютер = 1 веб-сервер = 1 веб-сайт = 127.0.0.1 = localhost

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

Как же быть, если на одном веб-сервере нужно сделать несколько веб-сайтов? Чтобы все эти веб-сайты работали. 

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

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

Как правило, веб-сервер, который у вас установлен (не важно будь это Apache, Nginx и.т.д.) этому одному веб-серверу соответствует одна папка на жестком диске, в которой лежат файлы вашего веб-сайта.

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

Но, с помощью виртуального веб-сервера мы можем создать сколько угодно таких папок, в котором, в одной папке расположить site1.ru, во второй папке расположить site2.ru, site3.ru и.т.д.

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

Настроив соответствующим образом веб-сервер, который у вас установлен, с помощью такой возможности, которая встроена в этот веб-сервер, вы можете пояснить вашему веб-серверу из какой папки компьютера нужно брать файлы, если произошел тот или иной запрос. 

Например, если произошел запрос в адресную строку site1.ru, то нужно взять файлы из той папки, к которой настроен веб-сервер для этого запроса.

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

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

Остается только разобраться в технических моментах, как это можно настроить.

сервер - это... Что такое WEB-сервер?

  • WEB-СЕРВЕР — СМ. ВЕБ СЕРВЕР Словарь бизнес терминов. Академик.ру. 2001 …   Словарь бизнес-терминов

  • Web-сервер — Архитектура серверов Wikimedia Веб сервер  это сервер, принимающий веб браузеров, и выдающий им HTML страницей, изображением, файлом, медиа потоком или другими данными. Веб серверы  основа Всемирной паутины. Веб сервером называют как программное… …   Википедия

  • Web сервер — Архитектура серверов Wikimedia Веб сервер  это сервер, принимающий веб браузеров, и выдающий им HTML страницей, изображением, файлом, медиа потоком или другими данными. Веб серверы  основа Всемирной паутины. Веб сервером называют как программное… …   Википедия

  • WEB-сервер (или Интернет-сервер) — – компьютер на котором размещена информация, предоставляемая для доступа из Интернета. Web сервер также называют Web узлом …   Энциклопедический словарь СМИ

  • Web Proxy Autodiscovery Protocol — Web Proxy Auto Discovery Protocol (WPAD) (протокол автоматической настройки прокси)  метод, используемый клиентами для определения места (URL) расположения конфигурационного файла с использованием технологий DHCP и/или DNS. После того, как… …   Википедия

  • сервер — Функциональное устройство, предоставляющее услуги рабочим станциям, персональным компьютерам или другим функциональным устройствам. [РД 01.120.00 КТН 228 06] сервер Компьютер или приложение, предоставляющие услуги, ресурсы или данные клиентскому… …   Справочник технического переводчика

  • Сервер приложений — (англ. application server)  это программная платформа (software framework), предназначенная для эффективного исполнения процедур (программ, механических операций, скриптов), которые поддерживают построение приложений. Сервер приложений… …   Википедия

  • Сервер доменных имен — <**> Сервер доменных имен совокупность программно технических средств, обеспечивающих возможность использования символьной идентификации ресурсов в Интернет... Источник: <Письмо> Банка России от 03.02.2004 N 16 Т О Рекомендациях по… …   Официальная терминология

  • сервер в Интернете Элекроэнергетического института США по проблемам анализа и использования энергетических топлив — — [А.С.Гольдберг. Англо русский энергетический словарь. 2006 г.] Тематики энергетика в целом EN EPRI Fuels Web Server …   Справочник технического переводчика

  • Web Cache Communication Protocol — (WCCP)  разработанный компанией Cisco протокол перенаправления контента. Предоставляет механизм перенаправления потоков трафика в реальном времени. Имеет встроенные масштабирование, балансировку нагрузки, отказоустойчивость. Cisco IOS… …   Википедия

  • Веб-сервер — Национальная библиотека им. Н. Э. Баумана

    Материал из Национальной библиотеки им. Н. Э. Баумана
    Последнее изменение этой страницы: 17:19, 18 ноября 2016.

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

    Краткая характеристика

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

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

    С точки зрения ПО, веб-сервер включает в себя некоторые вещи, которые контролируют доступ пользователей к размещенным на сервере файлам, это минимум HTTP сервера. HTTP сервер это часть ПО которая расшифровывает URL (веб-адрес) и HTTP (протокол который использует браузер для просмотра веб-станиц). Простыми словами, когда браузеру нужен файл размещенный на веб-сервере, браузер запрашивает его через HTTP. Когда запрос достигает нужного веб-сервера (железо), сервер HTTP (ПО) передает запрашиваемый документ обратно, также через HTTP.

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

    Взаимодействие браузера и веб-сервера

    Статический веб-сервер, или стек, состоит из компьютера (железо) с сервером HTTP (ПО). На слэнге это называется “статикой”, потому что сервер посылает размещенные на нем файлы в браузер “как есть”.

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

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

    Цель и функции веб-сервера

    Цель веб-сервера проста - обслуживать одновременно большое количество клиентов, максимально эффективно используя hardware.

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

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

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

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

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

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

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

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

    HTTP

    Во-вторых, веб-сервер обеспечивает поддержку HTTP (hypertext transfer protocol). Как следует из названия, HTTP указывает, как передавать гипертекст (т.е. связанные веб-документы) между двумя компьютерами.

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

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

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

    1. Только клиенты могут отправлять HTTP запросы, и только на сервера. Сервера отвечают только на HTTP запросы клиента.
    2. Когда запрашивается физический файл, клиент должен сформировать URL для сервера.
    3. Веб-сервер должен ответить на каждый HTTP запрос, по крайней мере с сообщением об ошибке.

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

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

    Популярные веб-сервера

    Apache HTTP Server

    Apache HTTP Server является проектом, развиваемый The Apache Software Foundation, в рамках которого разрабатывается кроссплатформенный HTTP сервер с открытым исходным кодом. Входит в состав LAMP (комплект из Linux, Apache, MySQL, PHP) и WAMP (комплект из Windows, Apache, MySQL, PHP). Другими словами, это полнофункциональный, расширяемый веб-сервер, полностью поддерживающий протокол HTTP/1.1 и распространяющийся с открытым исходным кодом[3].

    Состав архитектуры Apache HTTP Server:

    Архитектура Apache HTTP Server

    Ядро, написанное на языке программирования C, в чьи функциональные возможности входит:

    • обработка конфигурационных файлов
    • протокол HTTP
    • система загрузки модулей

    Система текстовой конфигурации, состоящая из трех уровней:

    • Конфигурация сервера (httpd.conf).
    • Конфигурация виртуального хоста (httpd.conf c версии 2.2, extra/httpd-vhosts.conf).
    • Конфигурация уровня директории (.htaccess).

    Мультипроцессорные модели (MPM), которые используются для работы с различными серверными операционными системами.(worker, pre-fork и др.) Система модулей для обеспечения:

    • Поддержки языков программирования.
    • Добавления функций.
    • Исправление ошибок или модификация основных функций.
    • Усиления безопасности.

    Механизм виртуальных хостов, он позволяет полноценно обслуживать на одном IP-адресе множество сайтов (доменных имён), отображая для каждого из них собственное содержимое.

    Веб-сервер Apache разрабатывается и поддерживается открытым сообществом разработчиков под эгидой Apache Software Foundation и включён во многие программные продукты, среди которых СУБД Oracle и IBM WebSphere. С апреля 1996 и до настоящего времени является самым популярным HTTP-сервером в Интернете.

    Apache Tomcat

    Apache Tomcat - это контейнер, который позволяет вам использовать интернет приложения такие, как Java сервлеты и JSP (серверные страницы Java). Пакеты Apache Tomcat 6.0 в Ubuntu поддерживают два варианта запуска Tomcat[4]:

    1. Использовать Tomcat как классический одиночный экземпляр на всю систему, который будет запускаться при загрузке системы от имени непривилегированного пользователя tomcat6.
    2. Развернуть частные экземпляры, которые будут запускаться с правами вашего собственного пользователя, и вам придется запускать и останавливать их самостоятельно.

    Tomcat используется в качестве самостоятельного веб-сервера, в качестве сервера контента в сочетании с веб-сервером Apache HTTP Server, а также в качестве контейнера сервлетов в серверах приложений JBoss и GlassFish. Компоненты Tomcat:

    Архитектура Apache Tomcat
    1. Catalina — контейнер сервлетов Tomcat’а, который реализует спецификацию сервлетов Servlet API. Servlet API является основой для всех остальных технологий Java, касающихся Web и дает возможность динамически генерировать любой web-контент, используя любые библиотеки, доступные для java. Архитектором Catalina являлся Craig McClanahan.
    2. Coyote — компонент стека HTTP Tomcat’а, который поддерживает протокол HTTP 1.1 для веб-серверов или контейнера приложений. Coyote прослушивает входящие соединения на определённом TCP порту сервера, пересылает запросы в механизм Tomcat для обработки запросов и отправляет ответ назад запрашивающему клиенту.
    3. Jasper — механизм JSP Tomcat’а. Tomcat 5.x использует Jasper 2, который является реализацией спецификации JavaServer Pages 2.0 Sun Microsystems. Jasper анализирует JSP-файлы, чтобы компилировать их в Java код, как сервлеты (которые могут быть обработаны с помощью Catalina). Во время выполнения, Jasper может автоматически обнаруживать изменения JSP-файла и перекомпилировать его. В Jasper 2, были добавлены важные особенности:
    • JSP библиотеки тегов объединения - Каждый тег разметки в файле JSP обрабатывается классом обработчика тегов. Объекты класса обработчика тега может быть объединены и использованы повторно в целом JSP сервлете.
    • Фоновая JSP компиляция - в то время как происходит перекомпиляция измененного JSP Java-кода, старая версия все еще доступна для серверных запросов. Старый JSP сервлет удаляется только когда новый JSP сервлет закончил перекомпиляцию.
    • Компилятор Java JDT - Jasper 2 может использовать Eclipse, JDT (Средства разработки Java) компилятор Java вместо Apache Ant Ant и JAVAC.

    Некоторые из свободных ресурсов и объединений Apache Tomcat включают Tomcatexpert.com (а SpringSource спонсорское сообщество разработчиков и операторов, которые работают с Apache Tomcat в крупномасштабных производственных средах) и Apache Tomcat MuleSoft (который имеет учебные руководства по установке, обновлению, Настройка, мониторинг, устранение неполадок и крепления различные версии Tomcat).

    nginx

    Основная статья: nginx nginx (engine x) является HTTP-сервером изначально написанным Игорем Сысоевым. nginx также может использоваться как почтовый прокси-сервер, а также TCP/UDP прокси-сервер общего назначения[5]. Уже длительное время он обслуживает серверы многих высоконагруженных российских сайтов, таких как Яндекс, Mail.Ru, ВКонтакте и Рамблер. Согласно статистике Netcraft nginx обслуживал или проксировал 27.80% самых нагруженных сайтов в октябре 2016 года. Рабочие процессы в Nginx одновременно обслуживают множество соединений, обеспечивая их вызовами ОС (операционной системы) epoll (Linux), select и kqueue (FreeBSD). Данные, полученные от клиента, разбираются посредством конечного автомата. Обработку разобранного запроса осуществляет цепочка модулей, задаваемая конфигурацией. Формирование ответа клиенту происходит в буферах, которые могут указывать на отрезок файла или хранить данные в памяти. Последовательность передачи данных клиенту определяется цепочками, в которые группируются буферы. В структурном отношении HTTP-сервер Nginx разделён на виртуальные серверы, которые в свою очередь делятся на location. Виртуальному серверу или директиве можно задать порты и адреса для приёма соединений. Для location можно задать точный URI, часть URI, или регулярное выражение.Для оперативного управления памятью служат пулы, являющиеся последовательностью заранее выбранных блоков памяти. Один блок, выделяемый изначально под пул, имеет длину от 1 до 16 килобайт. Он разделён на области – занятую и незанятую. По мере заполнения последней выделение нового объекта обеспечивается образованием нового блока.

    nginx считается очень быстрым HTTP сервером. Вместо Apache или совместно с ним Nginx используют, чтобы ускорить обработку запросов и уменьшить нагрузку на сервер. Дело в том, что огромные возможности, заложенные модульной архитектурой Apache, большинству пользователей не требуются. Платить же за эту невостребованную функциональность приходится значительным расходом системных ресурсов. Для обычных сайтов, как правило, характерно явное «засилье» статичных файлов (изображений, файлов стилей, JavaScript), а не скриптов. Никакого специального функционала для передачи этих файлов посетителю ресурса не требуется, так как задача весьма проста. А, значит, и веб-сервер для обработки таких запросов должен быть простым и легковесным, как Nginx. Географическая классификация клиентов по их IP-адресу производится в nginx посредством специального модуля. Система Radix tree позволяет оперативно работать с IP-адресами, занимая минимум памяти.

    Примечания

    Что такое Веб-сервер — Основы Веб-программирования

    Описание

    Понятие Веб-сервер может относиться как к железу, так и к программному обеспечению (ПО).

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

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

    ../_images/web-server.svg

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

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

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

    Примечание

    Сервера приложений для Python

    • CherryPy
    • Gunicorn
    • uWSGI
    • Waitress
    • Tornado
    • Zope
    • Werkzeug

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

    Более детально

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

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

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

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

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

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

    Связь по HTTP

    Во-вторых, веб-сервер обеспечивает поддержку HTTP (hypertext transfer protocol). Как следует из названия, HTTP указывает, как передавать гипертекст (т.е. связанные веб-документы) между двумя компьютерами.

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

    Текстовый

    Все команды это человеко-читаемый текст.

    Не сохраняет состояние

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

    HTTP задает строгие правила, как клиент и сервер должны общаться. Более подробно смотри http-protocol. Вот некоторые из них:

    • Только клиенты могут отправлять HTTP запросы, и только на сервера. Сервера отвечают только на HTTP запросы клиента.
    • Когда запрашивается физический файл, клиент должен сформировать file URL (file:///var/log/syslog)
    • Веб-сервер должен ответить на каждый HTTP запрос, по крайней мере с сообщением об ошибке.

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

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

    Статика vs Динамика

    Грубо говоря, сервер может отдавать статическое или динамическое содержимое.

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

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

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

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

    Веб сервер - это... Что такое Веб сервер?

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

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

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

  • ВЕБ-СЕРВЕР — (англ. web server, от web паутина, сеть и server обслуживающий процессор), компьютер, подключенный к Интернету (см. ИНТЕРНЕТ), или программа, осуществляющая доступ к сетевым ресурсам или предоставляющая информацию клиентскому приложению или… …   Энциклопедический словарь

  • веб-сервер — сущ., кол во синонимов: 1 • сервер (16) Словарь синонимов ASIS. В.Н. Тришин. 2013 …   Словарь синонимов

  • веб-сервер — В World Wide Web программа, принимающая запросы на информацию в соответствии со стандартом HTTP. Сервер обрабатывает эти запросы и посылает нужный документ. [http://www.lexikon.ru/rekl/a eng.html] Тематики реклама EN web server …   Справочник технического переводчика

  • Веб-сервер — Архитектура серверов фонда Викимедиа Веб сервер  это сервер, принимающий HTTP запросы от клиентов, обычно веб браузеров, и вы …   Википедия

  • веб-сервер — веб се/рвер, веб се/рвера …   Слитно. Раздельно. Через дефис.

  • Сервер приложений — (англ. application server)  это программная платформа (software framework), предназначенная для эффективного исполнения процедур (программ, механических операций, скриптов), которые поддерживают построение приложений. Сервер приложений… …   Википедия

  • Веб-приложение — Веб приложение  клиент серверное приложение, в котором клиентом выступает браузер, а сервером  веб сервер. Логика веб приложения распределена между сервером и клиентом, хранение данных осуществляется, преимущественно, на сервере, обмен… …   Википедия

  • сервер - это... Что такое Веб-сервер?

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

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

  • ВЕБ-СЕРВЕР — (англ. web server, от web паутина, сеть и server обслуживающий процессор), компьютер, подключенный к Интернету (см. ИНТЕРНЕТ), или программа, осуществляющая доступ к сетевым ресурсам или предоставляющая информацию клиентскому приложению или… …   Энциклопедический словарь

  • веб-сервер — сущ., кол во синонимов: 1 • сервер (16) Словарь синонимов ASIS. В.Н. Тришин. 2013 …   Словарь синонимов

  • веб-сервер — В World Wide Web программа, принимающая запросы на информацию в соответствии со стандартом HTTP. Сервер обрабатывает эти запросы и посылает нужный документ. [http://www.lexikon.ru/rekl/a eng.html] Тематики реклама EN web server …   Справочник технического переводчика

  • Веб-сервер — Архитектура серверов фонда Викимедиа Веб сервер  это сервер, принимающий HTTP запросы от клиентов, обычно веб браузеров, и вы …   Википедия

  • Веб сервер — Архитектура серверов Wikimedia Веб сервер  это сервер, принимающий веб браузеров, и выдающий им HTML страницей, изображением, файлом, медиа потоком или другими данными. Веб серверы  основа Всемирной паутины. Веб сервером называют как программное… …   Википедия

  • веб-сервер — веб се/рвер, веб се/рвера …   Слитно. Раздельно. Через дефис.

  • Сервер приложений — (англ. application server)  это программная платформа (software framework), предназначенная для эффективного исполнения процедур (программ, механических операций, скриптов), которые поддерживают построение приложений. Сервер приложений… …   Википедия

  • Веб-приложение — Веб приложение  клиент серверное приложение, в котором клиентом выступает браузер, а сервером  веб сервер. Логика веб приложения распределена между сервером и клиентом, хранение данных осуществляется, преимущественно, на сервере, обмен… …   Википедия

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

    Веб-сервер — это штука, без которой не работает ни один сайт в интернете. Каждый раз, когда вы заходите на сайт ваш браузер связывается с сервером и запрашивает необходимые для работы ресурсы: HTML, CSS и JS файлы, картинки, шрифты и прочее. Веб-сервер отвечает за то, чтобы найти эти ресурсы на сервере и переслать их браузеру.

    Веб-сервер — это программа. Она без перерывов работает на сервере, ожидает когда посетитель сайта запросит у неё новую страничку. Веб-серверов существует огромное множество, разбор их особенностей не входит в цели этой статьи. Рассмотрим общую схему их работы.

    Когда веб-сервер не нужен

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

    Фокус в том, что браузер сам берет на себя функцию веб-сервера когда сталкивается с адресами вида file://.... Сделано это ради удобства и работает только с file:// адресами.

    Подробнее про адреса читайте в статье Относительный адрес. Про *.html, *.css и прочие файлы — в статье про Статику.

    Статический сайт на сервере

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

    • дождется запроса от браузера
    • поймет какой файл хочет браузер
    • найдет файл на диске сервера
    • отправит файл браузеру

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

    Чаще всего в интернете встречаются динамические сайты: интернет-магазины, соц-сети, блоги — все они регулярно обновляются и для анонимных пользователей выглядят совсем не так, как для авторизованных. На таких сайтах каждый посетитель получает свою версию HTML-разметки, и поэтому сервер генерирует её на лету. А вот статика и медиа для всех общие, поэтому хранятся в виде обычных файлов. Чем отличается статика от медиа читайте в статье про Статику.

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

    Чтобы веб-серверу было проще понять что и где искать программисты добавляют к адресам специальные префиксы. Всю статику размещают на адресах, начинающихся со /static/..., а всю медиа — на /media/.... На разных сайтах используют разные префиксы, единого стандарта здесь нет. В терминах Django эти префиксы называются STATIC_URL и MEDIA_URL.

    Пути к каталогам, в которых хранятся файлы статики и медиа в терминах Django называют STATIC_ROOT и MEDIA_ROOT соответственно.

    STATIC_URL — это префикс урла, а STATIC_ROOT — префикс пути


    Попробуйте бесплатные уроки по Python

    Получите крутое код-ревью от практикующих программистов с разбором ошибок и рекомендациями, на что обратить внимание — бесплатно.

    Переходите на страницу учебных модулей «Девмана» и выбирайте тему.

    Отправить ответ

    avatar
      Подписаться  
    Уведомление о