Как настроить apache для windows

Оглавление

1. Веб-сервер на Windows

2. Как установить Apache на Windows

3. Как установить PHP на Windows

4. Настройка PHP 8

5. Как установить MySQL в Windows

6. Как установить phpMyAdmin в Windows

Заключение


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

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

MySQL — это система управления базами данных (СУБД). Это также самостоятельная программа, она используется для хранения данных, поиска по базам данных, для изменения и удаления данных. Веб-приложения нуждаются в постоянном хранилище, поэтому для веб-сервера дополнительно устанавливается и СУБД. Кстати, вполне возможно, что вы слышали про MariaDB — это тоже СУБД. Первой появилась MySQL, а затем от неё ответвилась MariaDB. Для веб-приложений обе эти СУБД являются взаимозаменяемыми, то есть никакой разницы нет. В этой инструкции я буду показывать установку на примере MySQL, тем не менее если вы хотите попробовать новую MariaDB, то смотрите статью «Инструкция по установке веб-сервера Apache c PHP, MariaDB и phpMyAdmin в Windows».

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

Особенность Apache и других компонентов веб-сервера в том, что их корни уходят в Linux. И эти программы применяют в своей работе основные концепции этой операционной системы. Например, программы очень гибки в настройке — можно выполнить установку в любую папку, сайты также можно разместить в любой папке, в том числе на другом диске, не на том, где установлен сам веб-сервер. Даже файлы журналов можно вынести на третий диск и так далее. У веб-сервера много встроенных модулей — можно включить или отключить их в любом сочетании, можно подключить внешние модули. Можно создать много сайтов на одном веб-сервере и для каждого из них установить персональные настройки. Но эта гибкая настройка выполняется через текстовые файлы — именно такой подход (без графического интерфейса) позволяет описать любые конфигурации

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

Мы не будем делать какие-то комплексные настройки — наша цель, просто установить веб-сервер на Windows. Тем не менее было бы странно совсем не использовать такую мощь в настройке. Мы разделим сервер на две директории: в первой будут исполнимые файлы, а во второй — данные (файлы сайтов и баз данных). В будущем, когда возникнет необходимость делать резервные копии информации или обновлять веб-сервер, вы поймёте, насколько удобен этот подход!

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

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

Перейдите в каталог C:\Server\data\DB\ и создайте там пустую папку data.

Для работы всех компонентов веб-сервера необходим файл «Visual C++ Redistributable for Visual Studio 2015-2022» — это официальный файл от Microsoft. Чтобы его скачать перейдите по ссылке. После скачивания, запустите этот файл и выполните установку.

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

Как установить Apache на Windows

Перейдите на сайт apachelounge.com/download и скачайте .zip архив с веб-сервером:

Распакуйте папку Apache24 из этого архива в C:\Server\bin\.

Перейдите в каталог 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 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

Сохраняем и закрываем файл. Всё, настройка Apache завершена! Описание каждой изменённой директивы вы найдёте на этой странице.

Откройте командную строку (это можно сделать нажав одновременно клавиши Win+x).

Выберите там Windows PowerShell (администратор) и скопируйте туда:

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

Если поступит запрос от файервола в отношение Apache, то нажмите Разрешить доступ.

Теперь вводим в командную строку:

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

И нажмите Enter.

Теперь в браузере набираем http://localhost/ и видим следующее:

Это означает, что веб-сервер работает. Чтобы увидеть там файлы, добавьте их в каталог c:\Server\data\htdocs\ — это главная папка для данных сервера, где будут размещаться все сайты.

Как установить PHP на Windows

PHP 8 скачайте со страницы windows.php.net/download/. Выберите версию Thread Safe, обратите внимание на битность. Если вы затрудняетесь, какой именно файл скачать, то посмотрите эту заметку.

В папке c:\Server\bin\ создаём каталог PHP и копируем в него содержимое только что скаченного архива.

В файле c:\Server\bin\Apache24\conf\httpd.conf в самый конец добавляем строчки:

PHPIniDir "C:/Server/bin/PHP"
AddHandler application/x-httpd-php .php
LoadModule php_module "C:/Server/bin/php/php8apache2_4.dll"

И перезапускаем Apache:

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

В каталоге c:\Server\data\htdocs\ создаём файл с названием i.php, копируем в этот файл:

<?php
phpinfo ();

В браузере откройте ссылку http://localhost/i.php. Если вы видите что-то похожее, значит PHP работает:

Настройка PHP 8

Настройка PHP происходит в файле php.ini. В zip-архивах, предназначенных для ручной установки и для обновлений, php.ini нет (это сделано специально, чтобы при обновлении случайно не удалить ваш файл с настройками). Зато есть два других, которые называются php.ini-development и php.ini-production. Любой из них, при ручной установке, можно переименовать в php.ini и настраивать дальше. На локалхосте мы будем использовать php.ini-development.

Открываем файл php.ini любым текстовым редактором, ищем строчку

;extension_dir = "ext"

и заменяем её на

extension_dir = "C:\Server\bin\PHP\ext\"

Теперь найдите группу строк:

;extension=bz2
;extension=curl
;extension=ffi
;extension=ftp
;extension=fileinfo
;extension=gd
;extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=ldap
;extension=mbstring
;extension=exif      ; Must be after mbstring as it depends on it
;extension=mysqli
;extension=oci8_12c  ; Use with Oracle Database 12c Instant Client
;extension=odbc
;extension=openssl
;extension=pdo_firebird
;extension=pdo_mysql
;extension=pdo_oci
;extension=pdo_odbc
;extension=pdo_pgsql
;extension=pdo_sqlite
;extension=pgsql
;extension=shmop

и замените её на:

extension=bz2
extension=curl
extension=ffi
extension=ftp
extension=fileinfo
extension=gd
extension=gettext
extension=gmp
extension=intl
extension=imap
extension=ldap
extension=mbstring
extension=exif      ; Must be after mbstring as it depends on it
extension=mysqli
;extension=oci8_12c  ; Use with Oracle Database 12c Instant Client
extension=odbc
extension=openssl
;extension=pdo_firebird
extension=pdo_mysql
;extension=pdo_oci
extension=pdo_odbc
extension=pdo_pgsql
extension=pdo_sqlite
extension=pgsql
extension=shmop

теперь раскомментируйте эту группу строк:

;extension=soap
;extension=sockets
;extension=sodium
;extension=sqlite3
;extension=tidy
;extension=xsl

должно получиться:

extension=soap
extension=sockets
extension=sodium
extension=sqlite3
extension=tidy
extension=xsl

Этими действиями мы включили расширения. Они могут понадобиться в разных ситуациях для разных скриптов. Сохраняем файл и перезапускаем Apache.

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

Настоятельно рекомендуется добавить путь до PHP в переменную окружения PATH в Windows.

Также рекомендуется ознакомиться со статьями Что делать если PHP скрипту не хватает времени и памяти. Почему большой файл не загружается на сайт или в phpMyAdmin и Как увеличить память и время для PHP скриптов.

Материалы по дополнительной настройке, в том числе подключение поддержки PERL, Ruby, Python в Apache (только для тех, кому это нужно):

  • Как тестировать отправку писем в PHP на Windows
  • Настройка веб-сервера Apache для запуска программ Ruby на Windows
  • Настройка веб-сервера Apache для запуска программ Perl на Windows
  • Как настроить веб-сервер Apache на запуск Python в Windows

Как установить MySQL в Windows

Бесплатная версия MySQL называется MySQL Community Server. Её можно скачать на странице https://dev.mysql.com/downloads/mysql/. На этой же странице есть установщик в виде исполнимого файла, но я рекомендую скачать ZIP-архив.

На странице скачивания нам предлагают зарегистрироваться или войти в существующую учётную запись — но это делать необязательно. Достаточно нажать на ссылку «No thanks, just start my download».

В каталог c:\Server\bin\ распаковываем файлы из только что скаченного архива. Распакованная папка будет называться примерно mysql-8.0.17-winx64 (зависит от версии), переименуйте её в mysql-8.0.

Заходим в эту папку и создаём там файл my.ini. Теперь открываем этот файл любым текстовым редактором и добавьте туда следующие строки:

[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
datadir="c:/Server/data/DB/data/"
default_authentication_plugin=mysql_native_password

Сохраните и закройте его.

Настройка завершена, но нужно ещё выполнить инициализацию и установку, для этого открываем командную строку от имени администратора и последовательно вводим туда:

C:\Server\bin\mysql-8.0\bin\mysqld --initialize-insecure --user=root
C:\Server\bin\mysql-8.0\bin\mysqld --install
net start mysql

По окончанию этого процесса в каталоге C:\Server\data\DB\data\ должны появиться автоматически сгенерированные файлы.

Теперь служба MySQL будет запускаться при каждом запуске Windows.

Как установить phpMyAdmin в Windows

Сайт для скачивания phpMyAdmin: phpmyadmin.net.

Прямая ссылка на самую последнюю версию: phpMyAdmin-latest-all-languages.zip.

В каталог c:\Server\data\htdocs\ копируем содержимое только что скаченного архива. Переименовываем эту папку в phpmyadmin.

В каталоге c:\Server\data\htdocs\phpmyadmin\ создаём файл config.inc.php и копируем туда:

<?php
 
/* Servers configuration */
$i = 0;
 
/* Server: localhost [1] */
$i++;
$cfg['Servers'][$i]['verbose'] = '';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['nopassword'] = true;
$cfg['Servers'][$i]['AllowNoPassword'] = true;
 
/* End of servers configuration */
 
$cfg['blowfish_secret'] = 'kjLGJ8g;Hj3mlHy+Gd~FE3mN{gIATs^1lX+T=KVYv{ubK*U0V';
$cfg['DefaultLang'] = 'ru';
$cfg['ServerDefault'] = 1;
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
 
?>

В браузере набираем http://localhost/phpmyadmin/

В качестве имя пользователя вводим root. Поле пароля оставляем пустым.

Заключение

Вот и всё — теперь у вас есть свой персональный локальный веб-сервер на своём домашнем компьютере.

Если вдруг у вас что-то не получилось, то скорее всего вы пропустили какой-то шаг или сделали его неправильно — попробуйте всё сделать в точности по инструкции. Если проблема осталась, то ознакомьтесь со справочным материалом «Ошибки при настройке и установке Apache, PHP, MySQL/MariaDB, phpMyAdmin» и если даже он не помог, то напишите о своей ошибке в комментарии.

Большое количество материалов по Apache на русском языке специально для Windows вы найдёте на этой странице.

Примеры материалов, которые могут вам пригодиться в первую очередь:

  • Как защитить веб-сервер Apache от взлома в Windows
  • Несколько сайтов на Apache
  • Apache Forwarding — проброска портов веб-сервера
  • Как сделать резервную копию баз данных MySQL (MariaDB) в Windows без phpMyAdmin
  • Почему в логах ошибок Apache не сохраняются записи об ошибке 404
  • Как в Windows поменять сообщения ошибок Apache
  • Как настроить PHP для работы с get_browser (browscap.ini) в Windows
  • Файл .htaccess в Apache
  • Как обновить Apache на Windows
  • Как обновить PHP
  • Как обновить MySQL
  • Как обновить phpMyAdmin

Связанные статьи:

  • Ошибки при настройке и установке Apache, PHP, MySQL/MariaDB, phpMyAdmin (97.9%)
  • Установка Apache, PHP, MySQL и phpMyAdmin на Windows XP (60.3%)
  • Готовая сборка Apache для Windows XP (60.3%)
  • Что делать если PHP скрипту не хватает времени и памяти. Почему большой файл не загружается на сайт или в phpMyAdmin (58.4%)
  • Ошибка «Composer detected issues in your platform: Your Composer dependencies require the following PHP extensions to be installed: mysqli, openssl» (РЕШЕНО) (58.4%)
  • Почему не работают короткие теги в PHP (RANDOM — 54.2%)

Последнее обновление: 26.02.2021

Для работы с PHP нам потребуется веб-сервер. Обычно в связке с PHP применяется веб-сервер Apache. Официальный
сайт проекта — https://httpd.apache.org/. Там же можно найти всю подробную информацию о релизах, скачать исходный код.
Однако официальный сайт не предоставляет готовых сборок для ОС Windows.

Перед установкой Apache следует отметить, что если наша ОС Windows, то в системе должны быть установлен пакет для C++, который можно найти по адресу
для 64-битной и для 32-битной.

Итак, если нашей ОС является Windows, перейдем на сайт http://www.apachelounge.com/, который предоставляет дистрибутивы Apache для Windows:

Загрузка веб-сервера Apache

В подпункте Apache 2.4 binaries VS16 выберем последнюю версию дистрибутива сервера. На странице загрузок мы можем
найти две версии пакета Apache — для 64-битных систем и для 32-битных.

После загрузки пакета с Apache распакуем загруженный архив. В нем найдем папку непосредственно с файлами веб-сервера — каталог Apache24.
Переместим данный каталог на диск C, чтобы полный путь к каталогу составлял C:/Apache24.

Запуск Apache

В распакованном архиве в папке bin найдем файл httpd.exe

Запуск веб-сервера Apache

Это исполняемый файл сервера. Запустим его. Нам должна открыться следующая консоль:

веб-сервер Apache httpd.exe

Пока работает это приложение, мы можем обращаться к серверу. Для его тестирования введем в веб-браузере адрес
http:\localhost. После этого веб-браузер должен отобразить следующую страницу:

it works в веб-сервере Apache

Эта страница символизирует, что наш веб-сервер работает, и мы можем с ним работать.

Конфигурация веб-сервера

Теперь проведем конфигурацию сервера, чтобы связать его с ранее установленным интерпретатором PHP.. Для этого найдем в папке веб-сервера
в каталоге conf (то есть C:\Apache24\conf ) файл httpd.conf

конфигурация веб-сервера Apache и связь с PHP

Откроем этот файл в текстовом редакторе. httpd.conf настраивает поведение веб-сервера.
Мы не будем подобно затрагивать его описания, а только лишь произведем небольшие изменения, которые потребуются нам для работы с PHP.

Прежде всего подключим PHP. Для этого нам надо подключить модуль php, предназначенный для работы с apache. В частности, в папке
php мы можем найти файл php8apache2_4.dll:

php8apache2_4.dll и веб-сервер Apache и связь с PHP

Для подключения php найдем в файле httpd.conf конец блока загрузки модулей LoadModule

//......................
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule watchdog_module modules/mod_watchdog.so
#LoadModule xml2enc_module modules/mod_xml2enc.so

И в конце этого блока добавим строчки

LoadModule php_module "C:/php/php8apache2_4.dll"
PHPIniDir "C:/php"

Далее укажем место, где у нас будут храниться сайты. Для этого создадим, например, на диске С каталог localhost. Затем найдем в файле httpd.conf
строку

DocumentRoot "${SRVROOT}/htdocs"
<Directory "${SRVROOT}/htdocs">

По умолчанию в качестве хранилища документов используется каталог «c:/Apache24/htdocs». Заменим эту строку на следующую:

DocumentRoot "c:/localhost"
<Directory "c:/localhost">

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

ErrorLog "logs/error.log"

И заменим ее на

ErrorLog "c:/localhost/error.log"

Далее найдем строку

CustomLog "logs/access.log" common

И заменим ее на

CustomLog "c:/localhost/access.log" common

Таким образом, файл error.log, в который записываются ошибки, и файл access.log, в который заносятся все
данные о посещении веб-сайта, будут располагаться в папке c:/localhost.

Затем найдем строчку:

#ServerName www.example.com:80

И заменим ее на

ServerName localhost

Далее найдем блок <IfModule mime_module>:

<IfModule mime_module>
    #
    # TypesConfig points to the file containing the list of mappings from
    # filename extension to MIME-type.
    #
    TypesConfig conf/mime.types

И под строкой <IfModule mime_module> добавим две строчки:

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

То есть должно получиться:

<IfModule mime_module>
	AddType application/x-httpd-php .php
	AddType application/x-httpd-php-source .phps
    #
    # TypesConfig points to the file containing the list of mappings from
    # filename extension to MIME-type.
    #
    TypesConfig conf/mime.types

В данном случае мы добавили поддержку для файлов с расширением .php и .phps.

И в конце найдем блок <IfModule dir_module>:

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

И заменим его на следующий:

<IfModule dir_module>
	DirectoryIndex index.html index.php
</IfModule>

В данном случае мы определяем файлы, которые будут выполняться при обращении к корню файла или каталога. То есть по сути определяем главные страницы
веб-сайта: index.html и index.php.

Это минимально необходимая конфигурация, которая нужна для работы с PHP.

Теперь наша задача — убедиться, что php подключен и работает правильно. Для этого перейдем в папку c:/localhost, которую мы создали для хранения
файлов веб-сервера, и добавим в нее обычный текстовый файл. Переименуем его в index.php и внесем в него следующее содержание:

<?php
phpinfo();
?>

В данном случае мы создали простейший скрипт, который выводит общую информацию о PHP.

Теперь заново запустим файл httpd.exe и обратимся к этому скрипту, набрав в строке браузера
адрес http://localhost/index.php

phpinfo

Что тут произошло? При обращении к сайту на локальной машине в качестве адреса указывается http://localhost.
Затем указывается имя ресурса, к которому идет обращение. В данном случае в качестве ресурса используется файл
index.php. И так как в файле httpd.conf в качестве хранилища документов веб-сервера указан каталог C:\localhost, то именно в этом каталоге и будет
веб-сервер будет производить поиск нужных файлов.

И поскольку выше при конфигурировании мы указали, что в качестве главной страницы может использоваться файл index.php, то мы можем также обратиться к
этому ресурсу просто http://localhost/

Таким образом, теперь мы можем создавать свои сайты на php.

Установка веб-сервера в качестве службы

Если мы часто работаем с веб-сервером, в том числе для программиррования на PHP, то постоянно запускать таким образом сервер,
может быть утомительно. И в качестве альтернативы мы можем установить Apache в качестве службы Windows.
Для этого запустим командную строку Windows от имени администратора и установим Apache в качестве службы с помощью команды:

C:\Apache24\bin\httpd.exe -k install

Установка Apache и PHP

То есть в данном случае прописываем полный путь к файлу httpd.exe (C:\Apache24\bin\httpd.exe) и далее указываем команду на установку службы -k install.

Если установка завершится удачно, то в командная строка отобразит сообщение «The Apache2.4 service is successfully installed». Также будет проведено тестирование сервера.

После установки службы убедимся, что она запущена

Установка Apache и PHP в качестве службы Windows


Download Article

An in-depth guide to hosting a website using Apache Webserver


Download Article

  • Installing
  • |

  • Configuring
  • |

  • Setting Up SSL
  • |

  • Q&A
  • |

  • Tips

If you want to host a website on your Windows PC, the Apache webserver makes it easy. While the Apache Project used to offer a Windows installer, they don’t anymore. Fortunately, you can still install Apache easily by downloading the binaries from ApacheHaus. It even comes with OpenSSL, which you’ll want to set up so people can visit your website securely with HTTPS. This article will teach you how to download, install, and configure Apache webserver on your Windows computer to host a webpage on your computer.

Things You Should Know

  • You can download Apache with OpenSSL from https://www.apachehaus.com/cgi-bin/download.plx.
  • To install, copy the Apache24 folder to the root of your C drive, then run C:\Apache24\bin\httpd -k install at the command prompt.
  • Once installed, you can start the Apache service and edit the httpd.conf file for your website.
  1. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 1

    1

    Download the latest Apache binaries from Apache Haus. The official Apache website only offers source code to download. You can use a compiled version of Apache with OpenSSL support to avoid dealing with source code.[1]

    • Go to https://www.apachehaus.com/cgi-bin/download.plx.
    • Click the Download link for the latest version of Apache with OpenSSL.
    • Save the ZIP file to your computer.
  2. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 2

    2

    Extract the files. Unzip the file you downloaded from Apache Haus. This extracts a folder that begins with «httpd-2.4.55» to the current folder.

    • Inside the extracted folder, you’ll find a subfolder called «Apache24,» which contains the complete directory structure for your Apache installation.

    Advertisement

  3. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 3

    3

    Copy the «Apache24» folder to the root of your C drive. In File Explorer, right-click the Apache24 folder and select Copy (or press Ctrl + C). Then, click This PC in the left panel, right-click the C drive, then select Paste.

    • You’ll want to make sure Apache is in the root of your C drive to avoid errors. The installation directory should be C:\Apache24.
  4. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 4

    4

    Open Command Prompt as an administrator. To do this, type cmd into the Windows Search bar, right-click Command Prompt, and then select Run as administrator.

  5. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 5

    5

    Enter the binary directory. To do this:

    • Type cd and press the spacebar.
    • Type C:\Apache24\bin.
    • Press Enter.
  6. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 6

    6

    Type httpd -k install and press Enter. After a moment, you should see a pop-up message saying that Windows firewall has blocked some features of the app.[2]

  7. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 7

    7

    Allow Apache through the firewall. Check the boxes next to «Private» and «Public» networks, then click Allow access to continue. Once allowed, Apache will be installed.

    • You will see errors in the command prompt window once Apache is installed. This is just because the webserver isn’t configured for your website yet.
  8. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 8

    8

    Start the Apache web service. You have two options:

    • To start Apache from Command Prompt, type httpd and press Enter.
      • To stop Apache, use httpd -k shutdown.
      • To restart Apache, use httpd -k restart.
    • Alternatively, you can use the Services panel. Type services.msc into the Windows search bar and press Enter. Then, right-click Apache2.4 and select Start.
      • To stop Apache, right-click Apache2.4 and select Stop.
      • To restart, select Restart.
      • If you want Apache to launch automatically at reboot, right-click Apache2.4, select Properties, and set «Startup type» to Automatic.
  9. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 9

    9

    Test the installation. In your web browser, go to http://127.0.0.1:80 to ensure Apache is up and running.

  10. Advertisement

  1. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 10

    1

    Place your website files in the htdocs folder. By default, Apache uses the path C:\Apache24\htdocs as the source for your website files. Before your website goes live, make sure your HTML files are in that folder.

    • There’s a sample index.html in that folder already—the test site you saw when you went to http://127.0.0.1:80. Overwriting that file with your own index.html will automatically replace the homepage with your own.
  2. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 11

    2

    Open your httpd configuration file for editing. To configure Apache for your website, you’ll need to edit the file called httpd.conf, which is in C:\Apache24\conf.

    • Go to C:\Apache24\conf in File Explorer.
    • Right-click httpd.conf.
    • Select Open with > Notepad.
  3. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 12

    3

    Enter your IP address or hostname next to «ServerName.» While Apache may be able to determine this information automatically, it’s best to specify which hostname or IP address people will be using to access your website.

    • Scroll to the «ServerName» field. You can find it quickly by pressing Ctrl + F and searching for «ServerName.»
    • If you’ve registered a domain name that’s pointing to your computer’s IP address, you’ll want to enter that next to ServerName before the «:80.» For example: ServerName www.wikihow.com:80.
      • If you’re going to run Apache on a different port, replace «80» with your preferred port number.
    • If you don’t have a registered hostname, enter your computer’s IP address instead. Keep in mind that you’ll need to use your public IP address if you want people outside of your network to be able to access your self-hosted website.
    • If you don’t have a static IP address, you’ll need to update httpd.conf every time your IP address changes. Because of this, you should only host a website on your computer if you have a static IP address.
  4. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 13

    4

    Change the listening port (optional). If you want to allow people outside of your network to access your website, you may find that your ISP blocks traffic to port 80 (the default HTTP port) by default. To get around this, you can run Apache on a different port, such as port 8080. In this case, visitors to your site must add :8080 to the end of the URL to reach your website.

    • Press Ctrl + F and search for «Listen.»
    • Below «Listen 80,» add a new line that says Listen 8080 (or your preferred port.
    • If you don’t want your website to be accessible on port 80, you can comment on the «Listen 80» line by adding a hash (#) before it or deleting it entirely.
    • If you designate another port, make sure you allow it through your firewall.
  5. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 14

    5

    Save your changes and restart Apache. Click the File menu and select Save to save your changes. Any time you make changes to httpd.conf, you’ll need to restart Apache. There are two ways to do this:

    • Command Prompt: Type httpd -k restart and press Enter.
    • Services.msc: Right-click the Apache2.4 service and select Restart.
  6. Advertisement

  1. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 15

    1

    Request an SSL certificate. If you want visitors to your website to be able to connect securely with SSL (https), you’ll need to install an SSL certificate. The first thing you’ll need to do is use the built-in OpenSSL tool to create a certificate request, which you can then submit to a certificate authority like DigiCert or Comodo.

    • Open Command Prompt, type cd C:\Apache24\bin, and press Enter.
    • Type or paste this command and press Enter, replacing «server.key» and «server.csr» with the name of your server (e.g., wikihow.key and wikihow.csr: openssl req -new -newkey rsa:2048 –sha256 -nodes -keyout server.key -out server.csr.
    • When prompted for the «Common name» or FQDN, enter your full hostname (e.g., myserver.wikihow.com).
    • When prompted to enter a challenge phrase, leave it blank.
    • Follow the prompts to enter information for your certificate, including your 2-letter country code, other region info, and your email address. This creates two new files in the bin folder—server.csr and server.key (with your server’s name replacing server).
  2. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 16

    2

    Submit your certificate request to a certificate authority (CA). Each authority has a different submission process, but you’ll usually need to make an account and paste in your request key.

    • Right-click the server.csr file and select Open with > Notepad.
    • Copy everything inside the file by selecting it and pressing Ctrl + C.
    • Go to your preferred SSL certificate authority’s submission page and paste the copied text to submit your request. When your certificate is ready, you’ll receive two files via email, both ending with .crt.[3]
    • Copy the file called server.key to C:\Apache24\conf.
  3. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 17

    3

    Copy your certificate files to the Apache24\conf folder. Once you receive the certificate files from your certificate authority, both ending with .crt, copy or unzip them to C:\Apache24\conf.

  4. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 18

    4

    Open the SSL configuration file for editing. To do this, navigate to C:\Apache24\conf\extra, right-click httpd-ssl.conf, and select Open with > Notepad.

  5. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 19

    5

    Update the virtual host information. Scroll to the «SSL Virtual Host Context» section of the file, where you’ll see a «General setup for the virtual host» configuration. Replace the value of ServerName with the hostname for your website, leaving :443 intact. Also, replace the ServerAdmin value with your IP address.

  6. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 20

    6

    Replace the sample file names with your certificate file names.

    • Replace the value of «SSLCertificateFile» with the name of the .crt file sent by the CA (the one that begins with your domain name).
    • For example, SSLCertificateFile "${SRVROOT}/conf/server.crt"
    • Replace the «SSLCetificateKeyFile» value with the name of the .key file you generated earlier.
    • You’ll also need to add another directive for SSLCertificateChainFile if not present for the other .crt file sent by the CA. For example, SSLCertificateChainFile "${SRVROOT}/conf/cabundle.crt.
    • Save the file.
  7. Image titled Install and Configure Apache Webserver to Host a Website from Your Computer Step 21

    7

    Restart Apache. Once Apache restarts, your certificate will be installed. You should now be able to access your site by typing https://, followed by your hostname.

    • If needed, make sure you’ve opened port 443 in your firewall to allow HTTPS connections.
  8. Advertisement

Add New Question

  • Question

    How do I add it on the internet?

    Community Answer

    Port-forward port 80 on your router to your PC, get a free domain at no-ip.com, and link the domain to your IP.

Ask a Question

200 characters left

Include your email address to get a message when this question is answered.

Submit

Advertisement

  • If you mess up the httpd.conf file, don’t worry—there’s a backup version in C:\Apache24\conf\original. Just delete your current httpd.conf and replace it with the one in that location.

  • To uninstall Apache, run httpd.exe -k uninstall in Command Prompt.

Thanks for submitting a tip for review!

Advertisement

About This Article

Thanks to all authors for creating a page that has been read 340,186 times.

Is this article up to date?

Эта статья – пошаговая инструкция по созданию локального web-сервера. В ней описана установка web-сервера Apache 2.4 на платформе ОС Windows. Тестирование установки выполнялось на Windows Server 2012 R2 для 64х разрядной операционной системы. Более подробно можно посмотреть в документации http://httpd.apache.org/docs/2.4/

Установка  Apache 2.4

Шаг 1. На сайте apache.org нет версии Apache 2.4 для Windows. Поэтому дистрибутив возьмем на apachelounge.com. В момент написания статьи последний релиз – Apache 2.4.25 win64

В дистрибутиве Apache нет файла инсталляции. Поэтому установка будет выполняться вручную.

Шаг 4 .  Скачиваем  apache 2/4/25 win64   и компоненту C++ Redistributable Visual Studio 2015 : vc_redist_x64/86.exe.

Шаг 5   Создаем папку и распаковываем архив httpd-2.4.25-win64-VC14.zip временную папку.  Скопируйте папку  Apache24 на диск С.  Не меняйте путь. Пусть будет C:\Apache24 . Правок в файле конфигурации будет гораздо меньше, если маршрут  будет такой C:\Apache24

Шаг 6   С помощью блокнота редактируем  файл  конфигурации httpd.conf , установленный по маршруту  C:\Apache2\conf  :

Строка 46  Устанавливаем значение параметра ServerName.
ServerName localhost:80

Строка 116 Снимаем  комментарий  (#) и делаем доступно загрузку модуля

LoadModule foo_module modules/mod_foo.so  

Строка 172  . Устанавливаем значение параметра ServerName и ServerAdmin
ServerName localhost:80

ServerAdmin admin@mydomain.ru   

Я создал специальную учетную запись электронной почти на yandex  для параметра ServerAdmin

 Строка 179  Устанавливаем значение параметра DocumentRoot (расположение документов сайта). Я оставил такой мршрут по умолчанию

DocumentRoot C:/Apache24/htdocs

Шаг 7  Исполняемые файлы Apache находятся в папке C:\Apache24\bin. Добавляем это значение в переменную среды PATH Windows.

Шаг 8 Перед установкой  Apache как службу нужно запустить компоненту C++ Redistributable Visual Studio 2015 : vc_redist_x64/86.exe.

Шаг 9  Устанавливаем Apache как службу.

Исполняемые файлы Apache находятся в папке C:\Apache24\bin.  Для этом открываем командную панель  (Start > Run > cmd) с правами администратора и командой cd меняем директорию, чтобы было C:\Apache24\bin >  и запускаем
 httpd.exe -k install

Отметим, что я забыл выполнить шаг 8 перед  запуском службы Apache.  В результате без компоненты  C++ Redistributable Visual Studio 2015  не запускается  Apache из-за того , что нужна библиотека  vcruntime140.dll  в папке  C:\Windows\SysWOW64 ( а  для 32 бит в папку C:\Windows\System32).

Аналогичное сообщение дает параметр тестирования службы httpd.exe -t

Можно попробовать скачать компоненту  vcruntime140.dll от сюда  http://www.dll.ru/files/vcruntime140-dll.html и  скопировать  файл в папку  C:\Windows\SysWOW64  ( для 32 бит нужно скопировал  файл в папку C:\Windows\System32).  Однако после этого нужно перезагружать компьютер. Поэтому я рекомендую установить  компоненту C++ Redistributable Visual Studio 2015 : vc_redist_x64/86.exe. Установка этой компоненты не требует перезагрузки компьютера.

Шаг  10 После запуска службы apache  httpd.exe -k start , открываем список запущенным служб в управлении компьютера и находим службу apache 2.4

убедимся, что служба запущена и тип запуска – “автоматически”  

Шаг 10  Проверяем работоспособность сервера. В командной строке браузера набираем адрес: http://localhost. Если установка Apache прошла успешно – на экране отобразится текст It works!. В противном случае мы увидим пустой экран.

В случае если сервер не запустился, следует проверить, не занят ли порт 80, который использует Apache по умолчанию. Делается это с помощью команды
netstat –anb

Чаще всего этот порт используют Skype или Firefox. В этом случае следует либо освободить порт, либо перевести Apache на порт 8080.

Для этого в файле httpd.conf изменяем значений параметров ServerName и Listen. ServerName localhost:8080

После этого перезапускаем службу командой
httpd.exe -k restart

и опять пытаемся зайти по адресу http://localhost

Для удобства работы с сервером Apache можно установить в меню автозагрузки Windows ярлык, указывающий на C:\TestServer \Apache24\bin\ ApacheMonitor.exe


Как установить сервер Apache?

Как установить локальный сервер Apache 2.4 на компьютер с Windows?

Использование Apache HTTP Server в Microsoft Windows

Этот документ объясняет, как установить, настроить и запустить Apache 2.4 под Microsoft Windows. Если у вас есть вопросы после просмотра документации (и любых журналов событий и ошибок), вам следует обратиться к списку рассылки, поддерживаемому равноправными пользователями.

В этом документе предполагается, что вы устанавливаете бинарный дистрибутив Apache. Если вы хотите скомпилировать Apache самостоятельно (возможно, для помощи в разработке или отслеживании ошибок), см. Компиляция Apache для Microsoft Windows.

Требования к операционной системе

Основной платформой Windows для запуска Apache 2.4 является Windows 2000 или более поздняя версия. Всегда получайте и устанавливайте текущий пакет обновления, чтобы избежать ошибок операционной системы.

Версии Apache HTTP Server более поздние, чем 2.2, не будут работать ни в одной операционной системе, предшествующей Windows 2000.

Загрузка Apache для Windows

Сам по себе Apache HTTP Server Project не предоставляет бинарные выпуски программного обеспечения, только исходный код. Отдельные коммиттеры могут предоставлять бинарные пакеты для удобства, но это не релиз, подлежащий доставке.

Если вы не можете скомпилировать Apache HTTP Server самостоятельно, вы можете получить бинарный пакет из многочисленных бинарных дистрибутивов, доступных в Интернете.

Популярные варианты развертывания Apache httpd (и, необязательно, PHP и MySQL) в Microsoft Windows включают в себя:

  • ApacheHaus
  • Apache Lounge
  • Bitnami WAMP Stack
  • WampServer
  • XAMPP

Настройка Apache для Windows

Apache настраивается с помощью файлов в подкаталоге conf. Это те же файлы, которые используются для настройки версии Unix, но есть несколько разных директив для Apache в Windows. Смотрите указатель директив для всех доступных директив.

Основные отличия в Apache для Windows:

  • Поскольку Apache для Windows является многопоточным, он не использует отдельный процесс для каждого запроса, как Apache в Unix. Вместо этого обычно работают только два процесса Apache: родительский процесс и дочерний процесс, который обрабатывает запросы. Внутри дочернего процесса каждый запрос обрабатывается отдельным потоком.
  • Директивы управления процессом также различны:

    MaxConnectionsPerChild: Как и директива Unix, она контролирует, сколько соединений будет обслуживать один дочерний процесс перед выходом. Однако, в отличие от Unix, процесс замены не доступен мгновенно. Используйте значение по умолчанию MaxConnectionsPerChild 0, если не указано, как изменить поведение для устранения утечки памяти в сторонних модулях или внутрипроцессных приложениях.

    Предупреждение. Файл конфигурации сервера перечитывается при запуске нового дочернего процесса. Если вы изменили httpd.conf, новый дочерний элемент может не запуститься или вы можете получить неожиданные результаты.

    ThreadsPerChild: эта директива является новой. Он сообщает серверу, сколько потоков он должен использовать. Это максимальное количество соединений, которые сервер может обработать за один раз, поэтому убедитесь, что это число достаточно высоко для вашего сайта, если вы получаете много посещений. Рекомендуемое значение по умолчанию — ThreadsPerChild 150, но его необходимо настроить, чтобы отразить наибольшее ожидаемое количество одновременных соединений для принятия.

  • Директивы, которые принимают имена файлов в качестве аргументов, должны использовать имена файлов Windows вместо Unix. Однако, поскольку Apache может интерпретировать обратный слеш как последовательность «escape-символов», вы должны постоянно использовать прямой слеш в именах путей, а не обратный слеш.
  • Хотя в Windows имена файлов обычно не чувствительны к регистру, URL-адреса по-прежнему обрабатываются внутренне как регистрозависимые, прежде чем они сопоставляются с файловой системой. Например, все директивы <Location>, Alias и ProxyPass используют регистрозависимые аргументы. По этой причине особенно важно использовать директиву <Directory> при попытке ограничить доступ к контенту в файловой системе, поскольку эта директива применяется к любому контенту в каталоге, независимо от того, как к нему осуществляется доступ. Если вы хотите убедиться, что в URL используются только строчные буквы, вы можете использовать что-то вроде:

  • RewriteEngine On
    RewriteMap lowercase int:tolower
    RewriteCond "%{REQUEST_URI}" "[A-Z]"
    RewriteRule "(.*)" "${lowercase:$1}" [R,L]

  • При работе Apache требуется доступ на запись только в каталог журналов и любое настроенное дерево каталогов кэша. Из-за проблемы нечувствительных к регистру и коротких имен в формате 8.3 Apache должен проверить все указанные пути. Это означает, что каждый каталог, который оценивает Apache, от корня диска до листа каталога, должен иметь разрешения на чтение и просмотр каталога. Если Apache2.4 установлен в C:\Program Files, то для Apache должны быть видны корневой каталог, Program Files и Apache2.4.
  • Apache для Windows содержит возможность загружать модули во время выполнения, без перекомпиляции сервера. Если Apache скомпилирован нормально, он установит несколько дополнительных модулей в каталог \Apache2.4\modules. Чтобы активировать те или иные модули, необходимо использовать директиву LoadModule. Например, чтобы активировать модуль статуса, используйте следующее (в дополнение к директивам по активации статуса в access.conf):
  • LoadModule status_module "modules/mod_status.so"

    Информация о создании загружаемых модулей также доступна.

  • Apache также может загружать расширения ISAPI (Интерфейс прикладного программирования интернет-сервера), например, используемые Microsoft IIS и другими серверами Windows. Более подробная информация доступна. Обратите внимание, что Apache не может загружать фильтры ISAPI, и обработчики ISAPI с некоторыми расширениями функций Microsoft не будут работать.
  • При запуске сценариев CGI метод, используемый Apache для поиска интерпретатора сценария, настраивается с помощью директивы ScriptInterpreterSource.
  • Поскольку в Windows часто сложно управлять файлами с такими именами, как .htaccess, может оказаться полезным изменить имя этого файла конфигурации для каждого каталога с помощью директивы AccessFilename.
  • Любые ошибки во время запуска Apache регистрируются в журнале событий Windows при работе в Windows NT. Этот механизм действует как резервная копия для тех ситуаций, когда Apache еще не готов использовать файл error.log. Вы можете просмотреть журнал событий приложений Windows с помощью средства просмотра событий, например, Пуск — Настройки — Панель управления — Администрирование — Просмотр событий.

Запуск Apache как сервиса

Apache поставляется с утилитой, которая называется Apache Service Monitor. С его помощью вы можете видеть и управлять состоянием всех установленных сервисов Apache на любом компьютере в вашей сети. Чтобы иметь возможность управлять службой Apache с помощью монитора, сначала необходимо установить службу (либо автоматически через установку, либо вручную).

Вы можете установить Apache в качестве службы Windows NT следующим образом из командной строки в подкаталоге Apache bin:

httpd.exe -k install

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

httpd.exe -k install -n "MyServiceName"

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

httpd.exe -k install -n "MyServiceName" -f "c:\files\my.conf"

Если вы используете первую команду без каких-либо специальных параметров, кроме -k install, служба будет называться Apache2.4, и предполагается, что конфигурация будет conf\ httpd.conf.

Удаление службы Apache легко. Просто используйте:

httpd.exe -k uninstall

Определенную службу Apache, которую нужно удалить, можно указать с помощью:

httpd.exe -k uninstall -n "MyServiceName"

Обычный запуск, перезапуск и завершение работы службы Apache обычно выполняется через Apache Service Monitor, с помощью таких команд, как NET START Apache2.4 и NET STOP Apache2.4, или с помощью обычного управления службами Windows. Прежде чем запускать Apache как службу любым способом, необходимо проверить файл конфигурации службы, используя:

httpd.exe -n "MyServiceName" -t

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

httpd.exe -k start -n "MyServiceName"

Чтобы остановить службу Apache через ключи командной строки, используйте это:

httpd.exe -k stop -n "MyServiceName"

или

httpd.exe -k shutdown -n "MyServiceName"

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

httpd.exe -k restart -n "MyServiceName"

По умолчанию все службы Apache зарегистрированы для запуска в качестве системного пользователя (учетная запись LocalSystem). Учетная запись LocalSystem не имеет прав доступа к вашей сети через какой-либо механизм, защищенный Windows, включая файловую систему, именованные каналы, DCOM или безопасный RPC. Однако он имеет широкие привилегии на локальном уровне.

Никогда не предоставляйте никаких сетевых привилегий учетной записи LocalSystem! Если вам нужен Apache для доступа к сетевым ресурсам, создайте отдельную учетную запись для Apache, как указано ниже.

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

  1. Создайте обычную учетную запись пользователя домена и обязательно запомните ее пароль.
  2. Предоставьте только что созданному пользователю привилегию входить в систему как сервис и действовать как часть операционной системы. В Windows NT 4.0 эти привилегии предоставляются через Диспетчер пользователей для доменов, но в Windows 2000 и XP вы, вероятно, захотите использовать групповую политику для распространения этих параметров. Вы также можете установить их вручную с помощью оснастки MMC Local Security Policy.
  3. Убедитесь, что созданная учетная запись является членом группы «Пользователи».
  4. Предоставьте учетной записи права на чтение и выполнение (RX) всем папкам документов и сценариев (например, htdocs и cgi-bin).
  5. Предоставьте права на изменение учетной записи (RWXD) в директории logs Apache.
  6. Предоставьте учетной записи права на чтение и выполнение (RX) двоичного исполняемого файла httpd.exe.

Обычно рекомендуется предоставлять пользователю доступ к службе Apache в режиме чтения и выполнения (RX) для всего каталога Apache2.4, за исключением подкаталога logs, где пользователь должен иметь права как минимум на изменение (RWXD).

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

Код ошибки 2186 является хорошим признаком того, что вам необходимо просмотреть конфигурацию «Вход в систему» для службы, поскольку Apache не может получить доступ к требуемому сетевому ресурсу. Также обратите пристальное внимание на привилегии пользователя, настроенного для запуска Apache.

При запуске Apache как службы вы можете получить сообщение об ошибке из диспетчера управления службами Windows. Например, если вы попытаетесь запустить Apache с помощью апплета Services на панели управления Windows, вы можете получить следующее сообщение:

Could not start the Apache2.4 service on \\COMPUTER
Error 1067; The process terminated unexpectedly.

(Не удалось запустить службу Apache2.4 на \\ COMPUTER
Ошибка 1067; Процесс неожиданно завершился.)

Вы получите эту общую ошибку, если возникнут проблемы с запуском службы Apache. Чтобы увидеть, что действительно вызывает проблему, вы должны следовать инструкциям по запуску Apache для Windows из командной строки.

Если у вас возникли проблемы со службой, рекомендуется выполнить приведенные ниже инструкции, чтобы попытаться запустить httpd.exe из окна консоли, и устранить ошибки, прежде чем пытаться запустить его как службу снова.

Запуск Apache как консольного приложения

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

Чтобы запустить Apache из командной строки как консольное приложение, используйте следующую команду:

httpd.exe

Apache выполнится и будет работать до тех пор, пока не будет остановлен нажатием Control-C.

Вы также можете запустить Apache с помощью ярлыка «Запуск Apache» в консоли, расположенной в меню Пуск -> Программы -> Apache HTTP Server 2.4.xx -> Управление сервером Apache во время установки. Это откроет окно консоли и запустит Apache внутри него. Если у вас не установлен Apache в качестве службы, окно будет отображаться до тех пор, пока вы не остановите Apache, нажав Control-C в окне консоли, в котором работает Apache. Сервер закроется через несколько секунд. Однако, если у вас установлен Apache в качестве службы, ярлык запускает службу. Если служба Apache уже запущена, ярлык ничего не делает.

Если Apache работает как служба, вы можете остановить его, открыв другое окно консоли и введя:

httpd.exe -k shutdown

Запуску в качестве службы следует отдавать предпочтение перед запуском в окне консоли, потому что это позволяет Apache завершать любые текущие операции и корректно очищаться.

Но если сервер работает в окне консоли, вы можете остановить его, только нажав Control-C в том же окне.

Вы также можете Apache перезапустить. Это заставляет его перечитать файл конфигурации. Любые выполняемые операции разрешено выполнять без перерыва. Чтобы перезапустить Apache, нажмите Control-Break в окне консоли, которое вы использовали для запуска Apache, или введите

httpd.exe -k restart

если сервер работает как сервис.

Примечание для людей, знакомых с версией Apache для Unix: эти команды предоставляют Windows-эквивалент для kill -TERM pid и kill -USR1 pid. Используемая опция командной строки -k была выбрана в качестве напоминания о команде kill, используемой в Unix.

Если окно консоли Apache закрывается сразу или неожиданно после запуска, откройте командную строку в меню Пуск -> Программы. Перейдите в папку, в которую вы установили Apache, введите команду httpd.exe и прочитайте сообщение об ошибке. Затем перейдите в папку logs и просмотрите файл error.log на предмет ошибок конфигурации. Предполагая, что httpd установлен в C:\Program Files\Apache Software Foundation\Apache2.4\, вы можете сделать следующее:

c:
cd "\Program Files\Apache Software Foundation\Apache2.4\bin"
httpd.exe

Затем дождитесь остановки Apache или нажмите Control-C. Затем введите следующее:

cd ..\logs
more < error.log

При работе с Apache важно знать, как он найдет файл конфигурации. Вы можете указать файл конфигурации в командной строке двумя способами:

  • -f указывает абсолютный или относительный путь к конкретному файлу конфигурации:
  • httpd.exe -f "c:\my server files\anotherconfig.conf"

    или

    httpd.exe -f files\anotherconfig.conf

  • -n указывает установленную службу Apache, файл конфигурации которой будет использоваться:
  • httpd.exe -n "MyServiceName"

В обоих этих случаях правильный ServerRoot должен быть установлен в файле конфигурации.

Если вы не укажете файл конфигурации с помощью -f или -n, Apache будет использовать имя файла, скомпилированное на сервере, например conf\httpd.conf. Этот встроенный путь относится к каталогу установки. Вы можете проверить имя скомпилированного файла по значению, помеченному как SERVER_CONFIG_FILE, при вызове Apache с ключом -V, например так:

httpd.exe -V

Затем Apache попытается определить свой ServerRoot, выполнив следующие действия в следующем порядке:

  1. Директива ServerRoot через ключ командной строки -C.
  2. Ключ -d в командной строке.
  3. Текущий рабочий каталог.
  4. Запись реестра, которая была создана, если вы выполнили бинарную установку.
  5. Корень сервера скомпилирован в сервер. По умолчанию это /apache, вы можете проверить это с помощью httpd.exe -V и найти значение, помеченное как HTTPD_ROOT.

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

Значением этого ключа является каталог ServerRoot, который содержит подкаталог conf. Когда Apache запускается, он читает файл httpd.conf из этого каталога. Если этот файл содержит директиву ServerRoot, которая содержит каталог, отличный от каталога, полученного из ключа реестра выше, Apache забудет ключ реестра и использует каталог из файла конфигурации. Если вы копируете каталог Apache или файлы конфигурации в новое местоположение, очень важно обновить директиву ServerRoot в файле httpd.conf, чтобы отразить новое местоположение.

Тестирование установки

После запуска Apache (в окне консоли или в качестве службы) он будет прослушивать порт 80 (если только вы не изменили директиву Listen в файлах конфигурации или не установили Apache только для текущего пользователя). Чтобы подключиться к серверу и получить доступ к странице по умолчанию, запустите браузер и введите этот URL:

http://localhost/

Apache должен ответить с приветственной страницей, и вы должны увидеть «It Works!». Если ничего не происходит или вы получаете сообщение об ошибке, посмотрите файл error.log в подкаталоге logs. Если ваш хост не подключен к сети или у вас есть серьезные проблемы с конфигурацией DNS (службы доменных имен), вам, возможно, придется использовать этот URL:

http://127.0.0.1/

Если вы используете Apache на альтернативном порту, вам нужно явно указать это в URL:

http://127.0.0.1:8080/

Как только ваша базовая установка заработает, вы должны правильно ее настроить, отредактировав файлы в подкаталоге conf. Опять же, если вы измените конфигурацию службы Windows NT для Apache, сначала попытайтесь запустить ее из командной строки, чтобы убедиться, что служба запускается без ошибок.

Поскольку Apache не может использовать тот же порт совместно с другим приложением TCP/IP, вам может потребоваться остановить, удалить или перенастроить некоторые другие службы перед запуском Apache. Эти конфликтующие службы включают в себя другие WWW-серверы, некоторые реализации брандмауэра и даже некоторые клиентские приложения (такие как Skype), которые будут использовать порт 80, чтобы попытаться обойти проблемы брандмауэра.

Настройка доступа к сетевым ресурсам

Доступ к файлам по сети можно указать с помощью двух механизмов, предоставляемых Windows:

Mapped drive letters
           e.g., Alias "/images/" "Z:/"
UNC paths
           e.g., Alias "/images/" "//imagehost/www/images/"

Сопоставленные буквы дисков позволяют администратору поддерживать сопоставление с конкретным компьютером и путем вне конфигурации Apache httpd. Однако эти сопоставления связаны только с интерактивными сеансами и не доступны напрямую для Apache httpd, когда он запускается как служба. Используйте только пути UNC для сетевых ресурсов в httpd.conf, чтобы к ресурсам можно было обращаться последовательно независимо от того, как запущен Apache httpd. (Тайные и подверженные ошибкам процедуры могут обойти ограничение на сопоставленные буквы дисков, но это не рекомендуется.)

Пример DocumentRoot с UNC-путем
DocumentRoot "//dochost/www/html/"

Пример DocumentRoot с IP-адресом в UNC-пути
DocumentRoot "//192.168.1.50/docs/"

Пример Alias и соответствующий каталог с UNC-путем
Alias "/images/" "//imagehost/www/images/"
<Directory "//imagehost/www/images/">
#...
</Directory>

При запуске Apache httpd в качестве службы необходимо создать отдельную учетную запись для доступа к сетевым ресурсам, как описано выше.

Настройка Windows

  • Если в экземпляре операционной системы используется более нескольких десятков конвейерных регистраторов, часто необходимо увеличить «desktop heap». Для получения более подробной информации обратитесь к документации по журналу.

  • Как найти удаленные папки на компьютере windows 10
  • Как накатить драйвера windows 10
  • Как найти устройства и принтеры на компьютере в windows 10
  • Как найти службу в реестре windows
  • Как найти файлы linux в windows