Перейти к содержимому

Как узнать какой веб сервер используется

  • автор:

Как узнать какой сервер на хостинге Apache или Nginx

Существует несколько простых способов выяснить, какой веб-сервер установлен на вашем хостинге. В их основе лежит просмотр заголовков HTTP-запроса посредством различных сервисов или вручную. Чаще всего поиски данной информации заканчиваются тем, что пользователь сталкивается с такими вариантами ответа: Nginx или Apache – одни из самых популярных и хорошо зарекомендовавших себя проектов, предоставляющих в совокупности до 50% веб-трафика, который гонится на сайт. Следовательно, в этом материале мы разберем упомянутые веб-сервера. Данное руководство будет полезно всем пользователям, которые сталкиваются с этим вопросом впервые.

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

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

Определяем руками, просмотр HTTP заголовков

В этом варианте будем использовать сам браузер и инструменты разработчика CTRL+ SHIFT +I. В качестве браузере, рассмотрим на примере Google Chrome. Шаг 1. В браузере Google Chrome открываем сайт, у которого требуется узнать веб-сервер. Веб-сайтШаг 2. Открываем инструменты разработчика. Меню (три тоски) —> Дополнительные инструменты —> Инструменты разработчика. Меню разработчикаШаг 3. Заходим на вкладку network (сеть), затем перезагружаем сайт. NetworkШаг 4. В столбце «Name» находим название сайта, в моем случае это vseprolinux.ru. Кликаем левой кнопкой мыши. В появившемся окне справа в headers ищем слово «server». Это и есть веб-сервер, который используется на сайте. Headers

Bertal

  • http
  • https
  • ftp

bertal

Чтобы произвести успешную проверку http-заголовка, пользователю потребуется заполнить поля формы на странице сайта. Если пользователь предпочтет заполнить одно поле (URL сайта), то он получит лишь основную информацию о своём хостинге. Для получения развернутой информации все же рекомендуется заполнять все имеющиеся поля на странице сайта.

Примечательно, что запрос информации происходит несколькими способами:

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

Несколько интересных фактов о популярных веб-серверах

  • Разработка проекта стартовала в 1995 году. Сервер улучшали вплоть до 1999-го года. И уже через год после этого продукт начал широко применяться в сети Интернет.
  • Имеет множество модулей, гибкий.
  • Разработка сервера стартовала в 2002 году. Готовый продукт был представлен широкой публике в 2004 году.
  • Обладает высокой чувствительностью при мощных нагрузках.
Заключение

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

    • Удалить пользователя Линукс
    • parted Linux команды
    • Как !посмотреть !разрядность !Linux
    • linux очистить историю команд

    Apache: настройки веб-сервера, файл .htaccess

    Мы используем Apache httpd в качестве основного веб-сервера. Apache используется для организации большинства веб-серверов в мире и является самым массовым продуктом своего класса. Этот сервер обладает обширными возможностями конфигурации, является очень производительным и поддерживает все известные протоколы для работы веб-серверов. Специально для Apache созданы версии таких популярных языков программирования как Perl и PHP, а также этот сервер легко интегрируется с широко применяемыми СУБД (например, MySQL).

    Главный сайт проекта находится по адресу httpd.apache.org, а основная документация по версии 1.3.хх доступна на странице httpd.apache.org/docs/.

    Пользователям мы предоставляем возможность самостоятельной конфигурации Apache путем использования соответствующих директив в файле .htaccess. Таким образом можно решить большинство задач по конфигурации веб-сервера в условиях массового хостинга.

    Индексный файл

    Индексный файл или файл-индекс — это тот файл, который открывается по умолчанию при обращении пользователя через веб к каталогу, а не к конкретному файлу. Например, ваш посетитель запросит адрес http://ваш_домен/price/, где price — название каталога. Индексный файл это тот файл, который будет показан пользователю при обращении к каталогу без указании имени конкретного файла в нем.

    По умолчанию индексными файлами являются следующие: index.html, index.htm, index.php, index.php3, index.phtml, index.shtml, default.htm или default.html. Если вы хотите чтобы первым открывался какой-то иной файл, нужно переопределить текущие значения. Как это сделать читайте здесь.

    Назначение и использование файла .htaccess

    Файл .htaccess (обратите внимание, что первый символ в названии файла — точка) применяется для управления веб-сервером Apache со стороны конечного пользователя хостинга. Вы помещаете в этот файл директивы, которые веб-сервер воспринимает и обрабатывает, выполняя действия в соответствии с настройками, которые были сделаны пользователем.

    Файл .htaccess может быть размещен в корневом каталоге веб-сервера (прямо в каталоге www). В этом случае директивы из такого .htaccess действуют по всему веб-серверу. Также .htaccess может находиться и в конкретном подкаталоге сервера. Тогда директивы, которые указаны в этом файле, «перекрывают» действие директив из «основного» файла, который размещен в каталоге www или в любом каталоге более высокого уровня. То есть, действие директив из .htaccess наследуется сверху вниз, но не наоборот. Изменения, внесенные в файл, вступают в силу немедленно. Это связано с тем, что информация из .htaccess перечитывается при каждом обращении к веб-серверу Apache.

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

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

    Web Application Firewall

    Web Application Firewall (ModSecurity) необходим для обнаружения и предотвращения атак на веб-сайты. Проверка осуществляется определенным набором правил и, если она не пройдена, запрос к сайту отклоняется с ошибкой (403 forbidden).

    • SecRuleRemoveById — удалить правило по id [id:»»]
    • SecRuleRemoveByTag — удалить правило по тегу. [tag: «»]

    Определить, какое именно правило необходимо отключить, можно в журнале ошибок error.log

    Пример отключения по ID :

     SecRuleRemoveById 933100 933150 

    Примеры отключения по Tag :

     SecRuleRemoveByTag "attack-injection-php" SecRuleRemoveByTag "CWAF" 

    Переопределение кодировки:

    По умолчанию веб-сервер «отдает» все html-документы, которые размещены на сервере в кодировке utf-8. Изменить тип кодировки, в которой веб-сервер будет «отдавать» информацию, можно в личном кабинете https://cp.masterhost.ru.

    Для этого перейдите в раздел «Услуги» выберите виртуальную площадку и нажмите на домен, для которого необходимо изменить тип кодировки. Далее в списке параметров найдите строчку Кодировка (по умолчаниию) и нажмите на кодировку, как показано на рисунке ниже.

    Изменить кодировку можно также с помощью файла .htaccess . Для этого добавьте в него строку

    AddType "text/html; charset=koi8-r" .html .htm .shtml

    Получив такой .htaccess , веб-сервер Apache станет выдавать клиентскому браузеру заголовок, в котором будет указано, что документ имеет кодировку koi8-r.

    Если на вашем ресурсе существуют html-документы в разных кодировках, (ISO-8859-1, Windows-1250, Windows-1252, UTF-8), то вам, возможно, будет необходимо отключить принудительную выдачу заголовка с кодировкой windows-1251. Для этого в .htaccess добавляется строка:

    AddDefaultCharset Off

    При этом соответствующая кодировка должна быть прописана на каждой html-странице в виде тега

    Пример: как закрыть директорию паролем

    Одна из стандартных задач, которая решается путем использования .htaccess , это ограничение доступа к определенному каталогу на сервере. Например, нужно дать доступ к определенному каталогу отдельным посетителям, снабдив их при этом уникальным логином и паролем.

    В каталоге, к которому хотим ограничить доступ по паролю, создаем файл .htaccess с такими директивами:

    AuthType Basic AuthName "Some Name" AuthUserFile /home/uXXXXX/.htpasswd require valid-user 

    Путь /home/uXXXXX/.htpasswd обозначает полный путь к файлу паролей на диске нашего сервера. Если, например, вы поместите файл .htpasswd (в нем будут пароли) в домашний каталог, куда вы попадаете зайдя на сервер по FTP, то путь к этому файлу будет иметь вид /home/uXXXXX/.htpasswd, где uXXXXX — наименование вашей виртуальной площадки (например, u12345).

    В директиве AuthUserFile указываем абсолютный путь к файлу с логинами/паролями, который мы создадим чуть позже. Если вы создаете файл .htaccess на своем компьютере, а не сразу на сервере при помощи текстового редактора, обратите внимание на то, что .htaccess должен передаваться по FTP строго в текстовом (ASCII) режиме.

    Создаем файл паролей. Файл с паролями должен содержать строки вида login:password. Пароль должен быть зашифрован с использованием алгоритма MD5. Один из способов создать такой файл — воспользоваться программой, входящей в поставку Apache — htpasswd (на нашем сервере она находится в каталоге /usr/local/bin/, полный путь — /usr/local/bin/htpasswd).

    Рассмотрим как создать файл паролей в unix shell прямо на сервере. Зайдем в shell, и будем выполнять следующие команды:

    htpasswd -mbc .htpasswd user1 sNQ7j9oR2w
    htpasswd .htpasswd user2

    Если вы используете Windows и не хотите пользоваться unix shell для генерации паролей, можно загрузить Windows-версию программы htpasswd здесь и создать файл с паролями на своем компьютере, после чего загрузить его на сервер. Если у вас уже установлена Windows-версия Apache, файл htpasswd.exe можно найти в каталоге Program Files\Apache Group\Apache\bin\.

    Итак, получите htpasswd.exe и используйте его для генерации паролей таким образом:

    htpasswd.exe -mc .htpasswd user1
    htpasswd.exe -m .htpasswd user2

    После окончания заведения всех логинов файл нужно загрузить на сервер.

    Пример: переопределение индексного файла

    Ситуация: пользователь обратился к каталогу http://www.ваш_домен.ru/price/. При таком запросе первым откроется и будет показан индексный файл. Если вы хотите переопределить индексный файл и сделать так, чтобы первым открывался не index.htm, а, например, файл myindex.php, то сделать это можно поместив в файл .htaccess в соответствующем каталоге следующую инструкцию:

    DirectoryIndex myindex.php

    Получив .htaccess с таким содержимым, веб-сервер Apache откроет по умолчанию именно файл myindex.php.

    Пример: запрет и разрешение выдачи листинга

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

    Options +Indexes

    Файл .htaccess необходимо создавать именно в том каталоге, в котором планируется разрешить листинг. Данная директива будет действовать также и на все подкаталоги (это достигается включенной по умолчанию в настройках виртуального хоста директивой AllowOverride All).

    По умолчанию включена директива Options -Indexes, и в случае отсутствия индексной страницы вы получите HTTP ошибку 403.

    Если кодировка в именах файлов отображается не корректно, воспользуйтесь свойством Charset, чтобы указать нужную кодировку. Например для отображения кириллических символов в кодировке UTF-8 добавьте в файл .htaccess следующую инструкцию:

    IndexOptions Charset=UTF-8

    Пример: собственные страницы ошибок

    Иногда посетители веб-сервера запрашивают страницы, которые по каким-то причинам на сервере не существуют: неправильная ссылка с другой страницы или с другого сайта, владелец сервера случайно удалил документ и так далее. По умолчанию Apache выдает некую довольно аскетичную страницу, на которой находится сообщение вроде «File not found». Вы можете создать альтернативную версию этой страницы, задав обработчик этой ошибки через .htaccess . Читайте об этом подробнее в разделе «Диагностика ошибок в работе сайта, обработка ошибок 403, 404. ».

    Пример: запрет доступа с некоторых IP-адресов

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

    В таком случае необходимо создать в нужной директории файл .htaccess с директивами. Например, чтобы запретить доступ с IP-адреса 172.16.16.16:

    Order Allow,Deny Allow from All Deny from 172.16.16.16

    Теперь при попытке обратиться к сайту с IP-адреса 172.16.16.16 посетитель получит ошибку 403 или вашу страницу для этой ошибки.

    Указание части адреса в виде 172.16.16 ограничит доступ из подсети 172.16.16/24.

    Иногда требуется выполнить обратное действие и заблокировать доступ к сайту для всех IP кроме вашего (как узнать мой IP?). Например, чтобы открыть доступ только для IP-адреса 172.16.16.16, добавьте следующую инструкцию в файл .htaccess:

    Order Allow,Deny Allow from 172.16.16.16 

    С более подробной документацией вы можете ознакомиться в документации по Apache.

    Пример: запрет доступа к некоторым файлам

    Иногда возникает необходимость запретить доступ к определенным файлам. Например, к конфигурационным файлам, содержащим реквизиты доступа к базам данных, интерфейсам и т.п. Допустим, в файле config.cfg вы храните логин/пароль доступа к базе данных. Создаем в этой директории файл .htaccess с директивами:

     Order allow,deny Deny from all 

    Теперь, если посетитель наберет в браузере нечто вида http://www.ваш_домен.ru//config.cfg, он получит ошибку 403 или вашу страницу для этой ошибки.

    Пример: заголовок last-modified

    В ряде случаев требуется, чтобы web-сервер выдавал HTTP-заголовок Last-Modified. К примеру, при регистрации вашего ресурса на Яндексе, возникает ошибка «Неправильные даты». Для статических документов cервер будет выдавать значение last-modified всегда. Это действительно для html-файлов. Для SSI cервер будет выдавать значение last-modified в том случае, если прописана директива «XBitHack full» (просто пропишите эту строку в .htaccess ), и для файла, к которому происходит обращение, выставлен атрибут «исполняемый» для группы. В скриптах last-modified выдается иными средствами. Например, если учесть то, что php-скрипт генерирует код динамически, то самым логичным будет в качестве last-modified отдавать текущую дату и время./>

    Реализуется это следующим образом:

    ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); ?>

    Внимание: команда header должна выполняться в php-скрипте до того, как скрипт начнет выдавать html-текст в браузер пользователя.

    Полезные ссылки по теме:

    • Функция header
    • Функции для работы с сервером Apache

    Пример: управление кэшированием

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

    Настройка параметров модуля mod_expires производится в файле .htaccess, что позволяет сделать индивидуальные настройки для каждого каталога.

    В приведенном ниже примере отключено кэширование для текстовых документов, установлен период обновления для файлов с расширением gif — 3 месяца с момента изменения файла, для файлов с расширением jpeg — 1 день с момента обращения:

    ExpiresActive on ExpiresByType image/jpeg "access plus 1 day" ExpiresByType image/gif "modification plus 3 months" ExpiresByType text/html "now"

    Примечание: При использовании Parser если вам необходимо полностью исключить заголовки от модуля Apache mod_expires, то для этого необходимо в директории с parser3.cgi создать файл .htaccess и внести в него следующую директиву: ExpiresActive off

    Пример: как создать переадресацию

    • Если у вас размещены 2 домена (не обязательно на одной площадке) domain1.tld и domain2.tld, и вам необходимо, чтобы при обращении к domain2.tld у пользователей изменялся адрес на «правильный», и сразу происходило перенаправление, тогда добавьте для домена domain2.tld переадресацию на http://domain1.tld/. О том, как это сделать, написано в следующей статье.
    • Если вам необходимо, чтобы при обращении к вашему домену domain.tld происходило автоматическое перенаправление на www.domain.tld, создайте на виртуальной площадке в директории /home/uXXXX/domain.tld/www файл .htaccess (обратите внимание на то, что название файла начинается с точки) следующего содержания:
    RewriteEngine on RewriteCond % ^domain\.tld RewriteRule ^(.*)$ http://www.domain.tld/$1 [R=permanent,L]

    Переадресация с HTTP на HTTPS при использовании SSL

    Если необходимо запретить HTTP, оставив посетителям доступ только по защищенному протоколу HTTPS, то сделать это возможно в Личном кабинете.

    img

    • Услуги – Виртуальная площадка – Домен – Переадресация – Настроить
    • В открывшемся окне выбираем «http-> https» и нажимаем «Применить»

    Либо добавьте в файле .htaccess следующее правило:

    RewriteEngine On RewriteCond % !^443$ RewriteRule ^(.*)$ https://%% [L,R]

    Пример: особенность переадресации на синонимах

    Предположим, есть домен domain1.tld и синоним domain2.tld. Если запросить в браузере адрес http://domain2.tld/dir/ со знаком слэша в конце, то будет отображена индексная страница из директории dir основного домена, при этом содержимое адресной строки браузера останется без изменений. Но если запросить http://domain2.tld/dir без слэша в конце, то произойдёт переадресация на http://domain1.tld/dir/, и содержимое адресной строки изменится соответствующим образом.

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

    Если такое поведение веб-сервера вас не устраивает, добавьте в файл .htaccess следующие строки:

    RewriteEngine on RewriteCond % -d RewriteCond % !^domain2.tld$ RewriteRule ^(.+[^/])$ http://domain2.tld/$1/ [R]

    О создании переадресаций с другими условиями вы можете узнать из документации по web-серверу Apache.

    Установленные модули Apache

    Список стандартных и дополнительных модулей для веб-сервера Apache, которые установлены на хостинговых машинах:

    • mod_env
    • mod_log_config
    • mod_mime
    • mod_include
    • mod_autoindex
    • mod_dir
    • mod_cgi
    • mod_actions
    • mod_alias
    • mod_rewrite
    • mod_access
    • mod_auth
    • mod_expires
    • mod_setenvif
    • mod_php
    • mod_headers
    • mod_security

    Наши пользователи могут конфигурировать и использовать данные модули в рамках, которые предусмотрены техническими стандартами и тарифным планом конкретного пользователя.

    Немного о веб-серверах. Что это такое и какой веб-север выбрать?

    Немного о веб-серверах. Что это такое и какой веб-север выбрать?

    Мы часто говорим о серверах и рассказываем о том, какие из них лучше выбирать для рабочих целей. Напоминаем, что вы можете заказать у нас аренду VPS/VDS, выделенного сервера или сервера хранения для вашего бизнеса или других целей. Но сегодня обсудим еще одну важную вещь – веб-сервер. Разберемся, что он из себя представляет, как работает и какой вариант лучше выбрать для своего сайта.

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

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

    Веб-серверы часто путают с серверами приложений или используют эти названия как синонимы. Отчасти их можно назвать аналогами, но не совсем. У веб-серверов и серверов приложений есть несколько отличий. Веб-сервер работает только по протоколу HTTP и предназначен по большей части для отправки статических данных. Сервер приложений поддерживает и HTTP, и другие протоколы, например, RPC и прочие, а их ключевая цель – передача динамического, то есть, постоянно изменяющегося контента. Изначально у них разные задачи. Сейчас же в веб-серверах зачастую предусмотрена поддержка PHP, Python и других скриптовых языков, поэтому они взаимодействуют не только со статическими, но и с динамическими данными. А среди компонентов большинства серверов приложений есть и веб-серверы, которые используют как прокси-серверы.

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

    Как работает веб-сервер?

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

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

    Так выглядит процесс с точки зрения любого обывателя. А теперь разберемся в базовых внутренних процессах.

    Пользователь открывает клиентское приложение. Чаще всего, это обычный браузер из разряда Google Chrome или Mozilla Firefox. Он может быть установлен на любом устройстве, которое поддерживает такую возможность. Это может быть ПК, смартфон, планшет или даже игровая консоль, где предусмотрена возможность установки веб-браузера. Клиент передает запрос по HTTP-протоколу, который поступает на веб-сервер. Переход по URL-адресу – это и есть отправление запроса. Веб-сервер его обрабатывает и отправляет пользователю запрашиваемые данные. Это может быть обычная страница HTML, изображения или другие медиафайлы. Веб-сервер отправляет пользователю ресурсы по тому же HTTP-протоколу.

    Если описать процесс вкратце, то получим следующий алгоритм:

    1. Клиент отправляет HTTP-запрос.
    2. Веб-сервер получает запрос и обрабатывает его.
    3. Веб-сервер отправляет HTTP-ответ.
    4. Клиент получает запрашиваемые ресурсы.

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

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

    Обзор 3 самых популярных веб-серверов

    Первый веб-сервер в истории – CERN httpd, запущенный в 1991 году. Сейчас их существует большое количество, поэтому не так уж и легко определиться с выбором. И если с точки зрения клиента абсолютно нет разницы, какой веб-сервер используют на той или иной платформе, то владельцы площадок стараются выбрать оптимальный вариант для своих ресурсов.

    Если рассматривать статистику в русскоязычном интернете, то в 2020 году лидерство среди веб-серверов удерживают Nginx, Cloudflare и Apache. На долю Nginx приходится более половины площадок – 66,21%. Cloudflare занимает второе место – его используют в 8,51% случаев. Веб-сервер Apache задействован на 5,45% платформ.

    Глобальная статистика хоть и не кардинально, но отличается от данных рунета. В первой тройке самых популярных серверов в 2020 году оказались:

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

    Apache

    Apache HTTP Server разработчики представили еще в 1996 году. Это один из первых веб-серверов на рынке. После запуска программного обеспечение в свободный доступ, Apache обогнал всех конкурентов, и продолжает лидировать в наши дни. В мире его используют для 40,89% сайтов.

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

    Apache – кроссплатформенное программное обеспечение. Поддерживает все основные операционные системы, в том числе Microsoft Windows, Mac OS и UNIX-подобные ОС. С точки зрения архитектуры, Apache состоит из ядра, которое выполняет основные задачи, и большое количество дополнительных модулей. Ядро работает всегда. Модули можно подключать и отключать, что позволяет контролировать функциональность сервера.

    Nginx

    Создатель Nginx – российский разработчик Игорь Сысоев, который выпустил продукт в 2004 году. Это единственный российский веб-сервер в этом списке, который, тем не менее, популярен и в других странах – на его долю приходится 23,77% всех площадок мира. Nginx используют не только владельцы рядовых сайтов, но и гиганты рынка – Facebook, Pinterest, Netflix, Tumblr, Instagram и многие другие. Как и Apache, Nginx – open-source продукт. Но его можно использовать только на UNIX-подобных операционных системах Microsoft Windows, из-за чего этот веб-сервер немного уступает мировому лидеру.

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

    В вопросе же гибкости Nginx уступает другим продуктам. К примеру, модули нужно выбирать и компилировать с ядром – они не подключаются динамически. Но самостоятельное подключение модулей можно назвать и плюсом, потому что пользователи могут выбрать только необходимые из них и избежать произвольного включения остальных.

    IIS

    IIS, или Internet Information Services, – продукт Microsoft. Следовательно, использовать его можно только на операционной системе. Версия 1.0 была выпущена в 1995 году. Сейчас веб-сервер IIS используют на 16,45% всех сайтов в мире.

    Технически это пакет серверов с главным компонентом в виде веб-сервера. В отличие от Apache и Nginx, IIS не представлен в свободном доступе, но поставляется вместе с ОС из линейки Windows NT.

    По функциональности и производительности IIS находится примерно на одном уровне с более популярными бесплатными решениями. Большое внимание разработчики уделяют безопасности и улучшают ее с выпуском каждой новой версии – в этом вопросе IIS превосходит Apache и Nginx. Из-за того, что решение коммерческое, пользователи могут рассчитывать на поддержку Microsoft, что особенно важно для большого бизнеса. Существенные минусы – работа только на одной платформе и необходимость покупать лицензию Windows. Хотя второй фактор говорит о том, что IIS – условно-бесплатный, поскольку докупать продукт не нужно, он уже идет в комплекте.

    Если вы владелец сайта, без веб-сервера вы не сможете обойтись. Хорошо, что на рынке есть много продуктов и их можно комбинировать. Например, многие считают оптимальным сочетание Apache+Nginx. Главная задача – выбрать подходящий вариант с точки зрения производительности, безопасности и стоимости.

    Андрей Минин, автор блога

    Андрей Минин, автор блога

    Веб-серверы Apache и nginx (Linux)

    В Plesk для Linux для хостинга сайтов используется веб-сервер Apache (http://httpd.apache.org/). Сам Apache не работает непосредственно с сайтами; он отвечает за управление виртуальными серверами – веб-ресурсами, которые идентифицируются по IP-адресу или имени домена. Когда вы создаете сайт, Plesk добавляет для него новый виртуальный сервер в Apache.

    Для большей производительности веб-сервер Apache по умолчанию работает в связке с другим веб-сервером – nginx. Подробную информацию об интеграции между Apache и nginx в Plesk, а также о том, как ее отключить, смотрите в разделе Apache и nginx .

    С другой стороны, вы можете исключить Apache из процесса обслуживания запросов к веб-контенту определенных сайтов. Это можно сделать, изменив режим nginx. Более подробную информацию смотрите в разделе Изменение настроек веб-сервера Apache.

    Стандартная конфигурация веб-сервера

    Конфигурация Apache для всех виртуальных серверов в системе определяется с помощью файла /etc/httpd/conf/httpd.conf (в Red Hat Enterprise Linux, CentOS и CloudLinux) или /etc/apache2/apache2.conf (в Debian и Ubuntu). Конфигурационные файлы виртуальных серверов находятся на низшем уровне иерархии конфигурационных файлов. Они попадают в конфигурационный файл Apache ( last_httpd.conf ) через несколько уровней включения с помощью директивы include. В nginx используется аналогичный подход: файл /etc/nginx/nginx.conf содержит в себе конфигурационные файлы всех виртуальных серверов через несколько уровней включения. Читайте об иерархии конфигурационных файлов Apache и nginx .

    Каждый виртуальный сервер в системе имеет два файла – last_httpd.conf и last_nginx.conf – которые определяют стандартную конфигурацию Apache и nginx для соответствующего виртуального сервера. Эти файлы находятся в папке /var/www/vhosts/system//conf/ и создаются автоматически на основе так называемых шаблонов конфигурации. Поэтому если вы захотите изменить стандартную конфигурацию веб-сервера, изменения нужно будет внести в эти шаблоны. Как это сделать, читайте в разделе Changing Virtual Hosts Settings Using Configuration Templates в расширенном руководстве администратора.

    Индивидуальная конфигурация веб-сервера

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

    Стандартную конфигурацию веб-сервера можно переопределить на следующих уровнях:

    • Тарифный план Конфигурация, заданная на уровне тарифного плана, заменяет собой стандартную конфигурацию. В свойствах отдельных тарифных планов можно задать любые директивы Apache и nginx. Эти настройки хранятся в базе данных Plesk и будут использоваться по умолчанию для всех сайтов клиентов (подписчиков плана). Смотрите раздел Веб-сервер (Apache) .
    • Веб-сайт (виртуальный сервер) Индивидуальная конфигурация на уровне виртуального сервера (веб-сайта) заменяет собой конфигурацию, определенную в тарифном плане. Директивы Apache и nginx, заданные вами для того или иного сайта, сохраняются в файлы vhost.conf , vhost_ssl.conf и vhost_nginx.conf (в папке /var/www/vhosts/system//conf/ ). Параметры веб-сервера для конкретного сайта можно настроить двумя способами:
      • Через интерфейс панели клиента. Когда вы сохраните свои изменения, Plesk автоматически создаст соответствующие директивы в соответствующих конфигурационных файлах. Подробности смотрите в разделах Изменение настроек Apache для виртуальных серверов и Изменение настроек nginx для виртуальных серверов .
      • Путем ручной правки конфигурационных файлов. Подробные инструкции смотрите в расширенном руководстве администратора, раздел Virtual Host Configuration Files .

      Примечание: Вручную добавлять и редактировать конфигурационные файлы Apache и nginx могут только root -пользователи Linux.

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

      Иерархия настроек веб-сервера продемонстрирована на приведенной ниже схеме.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *