Установка и настройка веб сервера Apache и Nginx. В чем разница?

Устойчивость к нагрузкам и сбоям едва ли не самые критичные параметры для работы веб сервера. Сегодня более половины сайтов в сети Интернет обслуживают веб сервера Apach и Nginx, широко известные своей свободной лицензией. Их взаимодействие с полным стеком веб технологий, привлекает все больше внимание индустрии.

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


Установка и настройка Apache

Новый стабильный релиз версии этого веб сервера имеет номер 2.4. Для полноценной установки с архива нам понадобится следующий набор программ:

  • httpd-2.4.29-Win64-VC15.zip
  • php-7.2.0-Win32-VC15-x64.zip
  • mysql-8.0.11-winx64.zip
  • phpMyAdmin-4.7.6-all-languages.zip
  • vc_redist.x64.exe

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

В корне локального диска С: \ создаем каталог Server. Здесь же делаем два новых подкаталога: bin и data. Нужно перейти в каталог data и создать там подпапки для баз данных DB и для сайтов соответственно htdocs. Затем пройдите по созданной только что директории C:\Server\data\DB\ для создания в ней еще одной папки c именем DB.

Как правило, вкорне дискаC:\ создается каталог Server. В этом каталоге создайте 2 подкаталога:bin(для исполнимых файлов) и data.

Перейдите в каталог data и там создайте подпапки DB(для баз данных) и htdocs (для сайтов). Затем следуйте ниже приведенной инструкции.

C:.
+---bin
¦   +----Apache24
¦   ¦   L---conf
¦   +----mysql-8.0
¦   +----PHP
¦   L----Sendmail
+---certs
+---data
¦   +---DB
¦   ¦   L---data
¦   L---htdocs
¦       L----phpmyadmin
L---manage

Устанавливаем Apache 2.4

Содержимое архива следует распаковать в созданный вами ранее каталог в директории C: \ Server\bin\. Затем необходимо перейти в нее и открыть файл httpd.conf, воспользовавшись любой программой для чтения текстовых файлов. Нам необходимо выполнить замену ряда строк:

Define SRVROOT "c:/Apache24"
на
Define SRVROOT "c:/Server/bin/Apache24"
меняем
#ServerName www.example.com:80
на
ServerName localhost
меняем
DocumentRoot "${SRVROOT}/htdocs"
на
DocumentRoot "c:/Server/data/htdocs/"
меняем
<Directory "${SRVROOT}/htdocs">
на
<Directory "c:/Server/data/htdocs/">
меняем
DirectoryIndex index.html
на
DirectoryIndex index.php index.html index.htm
меняем
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride None
На
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All
и меняем
#LoadModule rewrite_module modules/mod_rewrite.so
На
LoadModule rewrite_module modules/mod_rewrite.so
Другими словами – просто нужно убрать решетку для того, чтобы это из комментария превратилось в код.

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

Открываем командную строку, синхронно нажав на клавиши Win и X клавиатуры компьютера. Выбираем Windows PowerShell(администратор) и копируем строку

c:\Server\bin\Apache24\bin\httpd.exe -k install

После этих действий ваш фаерволл возможно выдаст запрос разрешить сервер, подтвердите. А затем пропишите и введите следующее.

c:\Server\bin\Apache24\bin\httpd.exe -k start 

Сделайте ввод клавишей Enter.

 Установка и запуск httpd

В адресной строке выбранного вами по умолчанию браузера набираем http://localhost/. В результате чего вы должны увидеть надпись Index of/, как на скриншоте снизу.

Пример рабочего Апача

Вы только что создали реальный веб сервер Apache на локальной машине. Поздравляю, но в каталоге С:\Server\data\htdocs\ все еще нет ни одной страницы - попробуйте добавить их для того, чтобы точно убедиться в успехе.


Подготовка к развертыванию Nginx

Скачиваем архив c расширением pgp с официального сайта по адресу http://nginx.org/ru/download.html. Стабильной версией для ОС Windows сейчас 1.16.1. Рассмотрим установку на примере последней 10 версии. Распаковываем архив в любую папку, однако для целей правильной установки желательно поместить содержимое архива в директорию локального диска, где размещена сама ОС. Лучшим вариантом папки будет системная папка "Program Files" на системном диске.


Установка Nginx

Находясь в папке архива веб сервера, найдите файл инсталляции с расширением Nginx.exe. Дайте ОС команду на запуск файла удобным для вас способом, например двойным щелчком кнопки мыши. После необходимо проверить результат, для чего зайдите в браузер по умолчанию и в адресной строке пропишите "localhost" Положительный ответ сервера будет содержать текста как рисунке.

 Успешно установленный Nginx

Остановить работу веб сервера Nginx можно через диспетчер задач ОС.

Проверка процесса nginx
Запуск веб сервера Nginx

Запуск сервера на ОС Windows 10 имеет свои особенности. Нам потребуется задействовать родной для ОС веб сервер ISS. Через панель управления перейдите в установку и удаление программ и справа найдите кнопку Turn Windows Features On or Off.

Вам необходимо найти опции и включить процесс, отметив соответственно поля текущего инструмента веб разработки (IIS Management Console в группе Web Management Tools).

Включаем нужные фичи Windows

Через несколько минут сервер будет доступен для использования. Консоль менеджера сервера ISS, в котором будет находиться сайт по умолчанию можно отрыть непосредственно из меню "Пуск". Для удобства пользования измените путь к нему с "inetpub wwwroot" на С:\ "Имя вашей папки", например С:\ Work.

Консоль менеджера IIS

В каталоге с установленным сервером Nginx найдите папку conf, а в ней файл nginx.conf , откройте его любым текстовым редактором (рекомендуется Notepad). Отредактируйте строку в корне локальной ветки пути к сайту по умолчанию, заменив предыдущий путь на созданный нами.

Замена пути для nginx

Используя отдельную вкладку редактора, также можно изменить приветственный текст на главной странице веб сервера Nginx, например, "Hello". При очередном рабочем запуске веб сервера он будет отображать ее в рабочем окне браузера. Однако снова запустите исполняемый файл веб сервера nginx.exe, и в адресной сроке браузера введите его локальный адрес (localhost).


Так в чем же разница между ними?

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

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

Сейчас на сайте

Сейчас на сайте 0 пользователей и 0 гостей.