Apache HTTP-сервер представляет из себя кроссплатформенное программное обеспечение, назначение которого прежде всего это – размещение сайтов. Веб-сервер Apache поддерживает различные операционные системы, в том числе и Windows. Здесь разберём, как установить и настроить Apache для работы веб-страницы на Windows Server. В качестве примера будем использовать виртуальный выделенный сервер под управлением Windows Server 2022.
Предварительные работы
Перед тем, как приступить непосредственно к настройке веб-сервера, необходимо установить пакет Visual C++, содержащий компоненты среды, необходимые для запуска приложений C++, а именно, Visual C++ Redistributable for Visual Studio 2015. Данный пакет требуется для запуска Apache. Чтобы получить дистрибутив, перейдите по ссылке, где кликните Download
.
В следующем окне отметьте 64-х разрядную версию дистрибутива и ещё раз нажмите Download
.
После чего запустите на выполнение загруженный установщик, где активируйте согласие с условиями соглашения, затем нажмите Install
.
Загрузка и установка веб-сервера
Теперь можно обратиться к установке непосредственно веб-сервера. Zip-архив Apache доступен на его странице загрузки. Перейдите на неё и кликните в строку, содержащую 64-х битную версию веб-сервера.
По окончании загрузки архива извлеките из него каталог Apache24
. В нашем примере мы сохраняем его на диске C:
. Таким образом, файлы веб-сервера будут располагаться в папке C:\Apache24\
. При этом вы можете сохранить каталог в любое другое удобное для вас место и даже переименовать его по вашему усмотрению.
Настройка веб-сервера
Далее, переходим к настройке конфигурации Apache. Для этого необходимо внести изменения в конфигурационный файл httpd.conf
, который расположен в папке conf
каталога веб-сервера. Откройте файл для редактирования и прежде всего найдите строку Define SRVROOT "C:/Apache24"
. После чего приведите её в соответствие с тем, куда вы разместили и как переименовали каталог Apache24
. В нашем примере изменять данную строку необходимости нет.
Если в установленной версии конфигурационного файла отсутствует параметр Define SRVROOT
, то имя каталога необходимо прописать в следующих строках, заменив значение ${SRVROOT}
на путь к директории веб-сервера:
ServerRoot "${SRVROOT}"
DocumentRoot "${SRVROOT}/htdocs"
<Directory "${SRVROOT}/htdocs">
ScriptAlias /cgi-bin/ "${SRVROOT}/cgi-bin/"
Затем найдите строку, которая содержит Options Indexes FollowSymLinks
, и дополните её ещё одним значением, чтобы строка выглядела следующим образом:
Options Indexes FollowSymLinks ExecCGI
Далее, необходимо разрешить веб-серверу выполнять файлы .cgi
и .pl
. Это должно позволить запускать CGI- и Perl-скрипты вне директории cgi-bin
. Для этого отыщите следующую строку:
#AddHandler cgi-script .cgi
И в начале строки удалите символ #
, тем самым актировав данную настройку. Следующей строкой добавьте ещё одну:
AddHandler cgi-script .pl
Кроме того, в самый конец конфигурационного файла добавьте строку, определяющую расположение Perl из системного реестра:
ScriptInterpreterSource Registry
Для применения внесённых изменений сохраните файл httpd.conf
.
Запуск веб-сервера
На следующем шаге мы попробуем запустить веб-сервер. Сделать это можно из командной строки или из оболочки PowerShell. В первом случае откройте командную строку, для чего используйте комбинацию клавиш Win
R
, либо строку поиска, где наберите cmd
.
В открывшейся командной строке запустите исполняемый файл httpd.exe
из директории bin
, расположенной в каталоге веб-сервера:
C:\Apache24\bin\httpd.exe
Запуск командной оболочки PowerShell так же производится при помощи клавиш Win
R
или строки поиска, где следует набрать powershell. Активация веб-сервера производится командой:
& "C:\Apache24\bin\httpd.exe"
Чтобы убедиться, что веб-сервер работает, откройте на вашем VPS браузер и перейдите в нём по адресу http://localhost
:
Настройка брандмауэра
На этом этапе страница, запущенная на нашем веб-сервере, работает исключительно при доступе с VDS. При этом доступ к странице извне закрыт брандмауэром виртуальной машины. Для того, чтобы это исправить, необходимо добавить в брандмауэр разрешающее правило для Apache.
Запуск брандмауэра осуществляется с использованием опять же комбинации Win
R
, где следует набрать firewall.cpl
. После открытия окна Windows Defender Firewall кликните в строку Advanced settings
.
В открывшемся окне перейдите в Inbound Rules
и кликните в New Rule
.
В стартовом окне мастера активируйте строку Program
и нажмите Next
.
Затем при помощи кнопки Browse
выберите файл httpd.exe
из каталога bin
, после чего нажмите Next
.
В следующем окне отметьте все чекбоксы и снова нажмите Next
.
И наконец, в строке Name
укажите название нового правила и для его сохранения кликните Finish
.
Теперь ваша веб-страница будет доступна из сети в том числе и с вашей локальной рабочей станции. Чтобы перейти к ней наберите в адресной строке браузера IP-адрес вашего удалённого сервера или имя домена, A-запись которого настроена на этот IP-адрес.
Запуск Apache как службы
На данном этапе необходимо произвести запуск веб-сервера так, чтобы он функционировал как служба. Это позволит отказаться от использования командной строки и оболочки PowerShell для запуска Apache, поскольку веб-сервер будет работать в фоновом режиме. Для этого откройте командную строку, перейдите в каталог bin
и запустите файл httpd.exe
со следующими параметрами:
httpd.exe -k install
Таким образом, Apache теперь будет работать как служба и проверить это можно в менеджере служб. Чтобы это сделать используйте комбинацию клавиш Win
R
, где введите services.msc
. В списке найдите службу Apache2.4, откройте её и убедитесь, что служба запущена. Если это не так, нажмите Start
.