Содержание:
В этой статье мы разберем только основные принципы установки и первого запуска веб-сервера Apache на компьютере под управлением Windows. Учитывайте, что все остальные действия, такие как: установка PHP, подключение MySQL, добавление других необходимых компонентов для локального сервера, придется выполнять вручную, из-за чего могут изменяться настройки Apache. Если во время редактирования глобальных параметров возникнут проблемы, не стесняйтесь обращаться к официальной документации и искать в поисковике решение ошибок по их кодам.
Шаг 1: Скачивание и распаковка файлов
Apache для Windows распространяется в виде ZIP-архива, в котором находятся все нужные файлы. Установка через Терминал, как это осуществляется в дистрибутивах Linux, в этом случае недоступна, поэтому для получения файлов выполните следующие действия:
- Кликните по кнопке выше, чтобы перейти на официальный сайт веб-сервера, где нажмите по ссылке с названием последней доступной версии Apache.
- Вы окажетесь на странице описания версии, после чего выберите «Files for Microsoft Windows».
- В разделе «Downloading Apache for Windows» нажмите на ссылку «Apache Lounge».
- Выберите версию для разрядности своей операционной системы и начните загрузку.
- Пока файлы скачиваются, создайте папку, куда будут помещены все элементы, связанные с веб-сервером. Мы выбрали для этого системный раздел жесткого диска, создали папку «Server», а в ней — «Bin». Это стандартные названия каталогов, поэтому при редактировании конфигурационного файла будем учитывать именно данное расположение.
- Перетащите папку «Apache24» из скачанного архива в созданный ранее каталог «Bin».
Шаг 2: Изменение конфигурационного файла
Конфигурация локального веб-сервера, установленная по умолчанию, не подходит для его нормального запуска, чтобы проверить работу и подключить остальные компоненты. Связано это с изменением пути расположения файлов и другими параметрами, влияющими на старт программы. Измените их, выполнив представленные далее шаги.
- Перейдите по пути
C:\Server\bin\Apache24\conf\
. - Дважды кликните по файлу «httpd.conf» для его открытия.
- Если у вас есть продвинутый текстовый редактор, выберите его для просмотра файла конфигурации. В противном случае используйте стандартный «Блокнот».
- В документе найдите строку
Define SRVROOT "c:/Apache24"
. - Замените ее на
Define SRVROOT "c:/Server/bin/Apache24"
, чтобы указать новый путь к файлам. Учитывайте, что в строке мы указали созданный ранее путь. Если у вас он отличается, поменяйте выражение в кавычках. - Далее найдите строку
#ServerName www.example.com:80
, которая по умолчанию заключена в комментарий и неактивна. - Измените ее на
ServerName localhost
, указав тем самым локальный адрес, который в дальнейшем и будет использоваться для проверки веб-сервера. - Отыщите строки
DocumentRoot "${SRVROOT}/htdocs"
и<Directory "${SRVROOT}/htdocs">
, которые отвечают за расположение связанных с сервером файлов. - Замените их на
DocumentRoot "c:/Server/data/htdocs"
и<Directory "c:/Server/data/htdocs">
. - Сейчас параметр
DirectoryIndex
имеет только значениеindex.html
, поэтому его тоже нужно найти и отредактировать. - Добавьте еще несколько доступных форматов файлов, чтобы в итоге строка обрела вид
DirectoryIndex index.php index.html index.htm
. - Для строки
AllowOverride None
поменяйте состояние наAll
, удалив предыдущее выражение. - Осталось только найти
#LoadModule rewrite_module modules/mod_rewrite.so
и убрать значок #, активировав тем самым строку. - В итоге она должна отображаться так, как это показано на следующем скриншоте.
- Если с поиском конкретных строк у вас возникают проблемы, используйте сочетание клавиш Ctrl + F, чтобы вызвать инструмент «Найти» и вписать там необходимое выражение.
- Перед выходом не забудьте сохранить изменения в конфигурационном файле.
Шаг 3: Первый запуск локального веб-сервера
Приступим к первому запуску локального веб-сервера Apache для проверки его работоспособности. Надо это для того, чтобы при дальнейшей настройке у вас не возникло серьезных неполадок, на решение которых потратится много времени.
- Щелкните правой кнопкой мыши по меню «Пуск» и из появившегося меню выберите пункт «Windows PowerShell (администратор)».
- Введите команду
c:\Server\bin\Apache24\bin\httpd.exe -k install
и нажмите Enter для ее активации. Она установит компоненты Apache и подготовит их к работе. - После получения информации об успешной установке сервисов переходите к следующему шагу.
- Запуск веб-сервера осуществляется через команду c
:\Server\bin\Apache24\bin\httpd.exe -k start
. - Появится оповещение Безопасности Windows, которое следует подтвердить, нажав «Разрешить доступ».
- Откройте любой браузер и перейдите по адресу
http://localhost/
. Если на странице появилась надпись «Index of /», значит, все действия выполнены правильно. - При получении ошибки в консоли, свидетельствующей об отсутствии необходимых папок, перейдите в каталог «Server», создайте там директорию «data» с подпапкой «htdocs».
Запуск веб-сервера не произошел.
Пишет следующее, см скриншот.
Подскажите где ошибка.
Нашел ошибку. Необходимо добавить папку Data
Нужен пункт создать паку
создать паку
C:\Server\data\
и после
C:\Server\data\htdocs
Ошибка найдена. Все прошло. Спасибо
Во-первых, у вас крашит картинки. Может проблема в том, что я сижу с такого вирусника, как Яндекс, а может у вас бд или папка с пнгешками полетела, проверьте.
Во-вторых, почему такие важные вещи, как ошибки или поиск строк по документу сочетанием клавиш находятся ниже, чем основные действия? Создание директории запихнули в самый конец, хотя логично, что повершел выдаст ошибку в 251 строке, ибо путь указан неверное, на, оказывается, заранее созданные папки. Нет, ну если б я могла видеть будущее или скролить статью в поисках ответов ниже, попутно выдёргивая пряди волос, я бы не допускала таких ошибок, но суть последовательности в шагах заключается в алгоритмичном выполнении действий ПО ПОРЯДКУ!! Почему я должна нервничать и не понимать, почему указали именно такой путь? Может надо создать его самостоятельно? Тогда там будет пусто, какие документы будут использоваться из пустых папок? Может я новичок, да к тому же женщина, но статья расчитана на такую аудиторию, так почему бы не сделать её прямолинейной, без ответвлений по типу: «а если у вас так…, то….», когда можно сразу что-то создать. Я потратила полчаса и сожгла свои нервы. Подумайте над этим, если вам вдруг не всё равно.
На последнем шаге проблема, подскажет кто ?
PS C:\Windows\system32> c:\Server\bin\Apache24\bin\httpd.exe -k start.
[Sun Nov 26 09:07:51.008938 2023] [core:warn] [pid 6900:tid 388] AH00111: Config variable ${SRVROOT} is not defined
httpd.exe: Syntax error on line 39 of C:/Server/Bin/Apache24/conf/httpd.conf: ServerRoot must be a valid directory
PS C:\Windows\system32>
Здравствуйте. Установка Apache по умолчанию (в моем примере 2.4) предполагает, что он установлен в каталог c:\Apache24. Если вы загрузите файл и не извлеките его из корня диска c:\, вы увидите эту ошибку. SRVROOT показывает папку «/Apache24», тогда как в Windows вы обычно ожидаете увидеть папку «c:\Apache24».
Отредактируйте файл \Apache24\conf\httpd.conf. В строке 39 убедитесь, что указан путь к папке, в которой находится ваша установка. (т.е. туда, где вы распаковали скачанный файл). Теперь попробуйте снова запустить Apache, запустив команду httpd.exe из Командной строки. Если произошел нормальный переход на следующую строку без ошибок, значит, все в порядке, и вы можете проверить работу Apache, открыв браузер и перейдя по адресу: http://localhost.
Сделал всё точь в точь, но вместо «Index of/» получилось «It works»!(((
Да, сначала была распространенная проблема связанная с портом 80, но в последствии она была решена и Apache установился.
Может было принципиально ставить галку на брандмауэре Windows возле «Частные/домашние сети»?
Может надо ещё раз порыться в конфигурации Apache? Если ничего не помогает, может его просто переустановить?
разреши когда брандмаузер спросит
Ничего не спрашивает
Никакой реакции.
достаточно зайти в C: \ … \ …\ Apache24 \ htdocs и удалить index.html, у меня сработало
Спасибо, установил сервер Apache24, всё шло в точь по написанному с небольшими отличиями, так как у меня Windows 7 Professional, получил «Index of/».
не удалось установить. Служба не запускается. Код ошибки 1. Что это значит?
Здравствуйте!
Не запускается.
httpd-2.4.57-win64-VS17
Microsoft Windows [Version 10.0.19044.2846]
(c) Корпорация Майкрософт (Microsoft Corporation). Все права защищены.
C:\Windows\system32>c:\Server\bin\Apache24\bin\httpd.exe -k install
[Thu May 04 21:26:25.131033 2023] [mpm_winnt:error] [pid 3908:tid 388] AH00433: Apache2.4: Service is already installed.
C:\Windows\system32>c:\Server\bin\Apache24\bin\httpd.exe -k start
AH00558: httpd.exe: Could not reliably determine the server’s fully qualified domain name, using fe80::a4d9:84c6:e1fe:e54e. Set the ‘ServerName’ directive globally to suppress this message
(OS 10013)╤фхырэр яюя√Єър фюёЄєяр ъ ёюъхЄє ьхЄюфюь, чряЁх∙хээ√ь яЁртрьш фюёЄєяр. : AH00072: make_sock: could not bind to address [::]:80
(OS 10013)╤фхырэр яюя√Єър фюёЄєяр ъ ёюъхЄє ьхЄюфюь, чряЁх∙хээ√ь яЁртрьш фюёЄєяр. : AH00072: make_sock: could not bind to address 0.0.0.0:80
AH00451: no listening sockets available, shutting down
AH00015: Unable to open logs
C:\Windows\system32>