Сайт разработчика: http://www.apache.org/
Документация: http://httpd.apache.org/docs/2.2/
Дистрибутив: http://www.apachelounge.com/download/
Скачать zip архив httpd-2.2.XX-win32-x86-ssl.zip.
Распаковать архив дистрибутива в каталог C:\Apache2. Открыть в текстовом редакторе файл "C:\Apache2\conf\httpd.conf", являющийся основным конфигурационным файлом сервера Apache.
Правка конфигурационного файла httpd.conf
- Для загрузки модуля mod_rewrite найти и раскомментировать (убрать в начале строки символ "#") данную строку:
LoadModule rewrite_module modules/mod_rewrite.so - Для загрузки PHP интерпретатора, в конец блока загрузки модулей необходимо добавить строку:
LoadModule php5_module "C:/php/php5apache2_2.dll" - Определить каталог содержащий конфигурационный файл PHP, добавив ниже следующую строку:
PHPIniDir "C:/php" - Найти и раскомментировать строку:
ServerName www.example.com:80
Отредактировать ее следующим образом установив изначальное имя сервера:
ServerName localhost:80 - Найти строку:
DocumentRoot "c:/Apache2/htdocs"
Назначить корневую директорию управления сайтами (позже ее необходимо создать):
DocumentRoot "C:/apache" - Найти данный блок:
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
И заменить его на нижеследующий:
Options Includes Indexes FollowSymLinks
AllowOverride All
Allow from all - Удалить или закомментировать первоначальный блок управления директориями, который без комментариев выглядит примерно так:
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all - Найти блок:
DirectoryIndex index.html
Заменить его на:
DirectoryIndex index.html index.htm index.shtml index.php - Найти строку:
ErrorLog "logs/error.log"
Заменить на нижеследующую (в этом случае просматривать глобальный файл ошибок сервера будет удобнее):
ErrorLog "C:/apache/error.log" - Найти строку:
CustomLog "logs/access.log" common
Заменить на:
CustomLog "C:/apache/access.log" common - Для работы SSI (включения на стороне сервера) необходимо найти и раскомментировать следующие строки, находящийся в блоке , :
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml - Добавить ниже, в тот же блок , две строки:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps - Найти и раскомментировать строки:
Include conf/extra/httpd-mpm.conf
Include conf/extra/httpd-autoindex.conf
Include conf/extra/httpd-vhosts.conf
Include conf/extra/httpd-manual.conf
Include conf/extra/httpd- default.conf
Сохраните изменения и закройте файл "httpd.conf"
Теперь нужно открыть файл "C:\Apache2\conf\extra\httpd-vhosts.conf" и произвести в нем следующие изменения:
Существующие блоки примеров виртуальных хостов необходимо удалить, и вставить только нижеследующее:
NameVirtualHost *:80
DocumentRoot "C:/apache/localhost/www"
ServerName localhost
ErrorLog "C:/apache/localhost/error.log"
CustomLog "C:/apache/localhost/access.log" common
Сохранить изменения и закрыть файл "httpd-vhosts.conf"
Настройка конфигурационныйх файлов завершена, теперь необходимо установить сервис Apache2.2.
Установка сервиса Apache2.2
Запустить командную строку и ввести в ней "C:\Apache2\bin\httpd.exe -k install" |
При успешной установке сервиса Apache2.2 должно появится |
Если необходимо установить ручной запуск сервиса Apache2.2, сделать следующее:
"Start" ("Пуск") > "Control Panel" ("Панель управления") > "Administrative Tools" ("Администрирование") > "Services" ("Службы")
в открывшемся окне управления служб выбрать строку "Apache2.2" и сделать на ней двойной щелчок, после чего во вкладке "General" ("Общие") выбрать ручной запуск сервиса - "Startup type: Manual" ("Тип запуска: вручную").
Создание структуры каталогов виртуальных хостов.
В корне диска необходимо создать каталог "apache" - в нем будут лежать виртуальные хосты (домены), глобальный файл журнала ошибок "error.log" (создается программой при первом запуске, автоматически), глобальный файл доступа "access.log" (создается автоматически). В каталоге "apache" создать еще одну пустую папку - "localhost", в которой, в свою очередь, создать папку "www", именно в ней будут находится все файлы сайта.
Пример создания виртуального хоста
При необходимости установки дополнительных виртуальных хостов сделать следующее:
Открыть файл "httpd-vhosts.conf", и создать в нём блок, примерно, следующего содержания:
DocumentRoot "C:/apache/test.ru/www" # Папка, в которой будет корень хоста.
ServerName test.ru # Домен по которому вы сможете обращаться к виртуальному хосту.
ServerAlias www.test.ru # Алиас (добавочное имя) домена.
ErrorLog "C:/apache/test.ru/error.log" # Файл, в который будут записываться ошибки.
CustomLog "C:/apache/test.ru/access.log" common # Файл журнала доступа к хосту.
Затем в каталоге "apache", создать папку "test.ru", в которой, в свою очередь, создать папку "www".
Следующий шаг создания виртуального хоста – это изменение файла
C:\WINDOWS\system32\drivers\etc\hosts
операционной системы. Открыть данный файл и добавьте в него две строки:
127.0.0.1 test.ru
127.0.0.1 www.test.ru
Теперь запустить сервер Apache, если он еще не запущен, выполнив в командной строке
"C:\Apache2\bin\httpd.exe -k start"
открыть браузер, ввести в адресной строке "test.ru" или "www.test.ru" и откроется страница в созданном виртуальном хосте.
Документация Apache, при запущенном сервере, доступна по адресу http://localhost/manual/
Остановить работу Apache можно выполнив в командной строке
"C:\Apache2\bin\httpd.exe -k stop"
При необходимости перезагрузить Apache, выполните в командной строке
"C:\Apache2\bin\httpd.exe -k restart"
Установка и настройка веб-сервера Apache – завершена.
Создание пакетных файлов для запуска и остановки сервисов
Вручную редактировать файл "hosts" при каждом запуске сервисов не удобно, поэтому для более удобного, одновременного запуска сервисов Apache, MySQL, и изменения файла "hosts" можно создать два пакетных файла: на запуск и остановку, которые будут выполнять всю рутинную работу автоматически.
При использовании виртуальных хостов необходимо создать в директории C:\apache два файла: vhosts-off.txt – содержащий изначальное содержимое файла "hosts" и vhosts-on.txt – содержащий все виртуальные хосты. При создании новых виртуальных хостов необходимо будет добавлять их в файл vhosts-on.txt, а не в C: \WINDOWS\system32\drivers\etc\hosts.
Файл vhosts-off.txt (может содержать одну единственную строку):
127.0.0.1 localhost
Пример файла vhosts-on.txt с виртуальными хостами www.test.ru и test.ru:
127.0.0.1 localhost
127.0.0.1 www.test.ru
127.0.0.1 test.ru
В той же директории C:\apache, создать два пакетных файла: start-webserver.bat – для запуска сервисов и подмены файла "hosts", и stop-webserver.bat – для остановки сервисов и очистки файла "hosts".
Файл запуска start-webserver.bat:
@echo off
echo.
if not exist C:\apache\vhosts- on.txt goto no_vhosts
echo Create virtual hosts:
copy /v /y C:\apache\vhosts-on.txt C:\WINDOWS\system32\drivers\etc\hosts
echo.
:no_vhosts
NET start Apache2.2
NET start MySQL
Файл остановки stop-webserver.bat:
@echo off
echo.
if not exist C:\apache\vhosts-off.txt goto no_vhosts
echo Restore hosts file:
copy /v /y C:\apache\vhosts-off.txt C:\WINDOWS\system32\drivers\etc\hosts
echo.
:no_vhosts
NET stop Apache2.2
NET stop MySQL
Одновременно с сервисами удобно запускать программу Apache Monitor, отображающую в системном лотке состояние сервера Apache, для чего можно создать еще один пакетный файл "start-webserver-monitor.bat", содержание которого аналогично файлу "start-webserver.bat" с добавлением в самый конец следующей строки:
start "" "C: \Apache2\bin\ApacheMonitor.exe"
Одновременно с остановкой сервисов можно удалять процесс Apache Monitor, для этого нужно создать еще один пакетный файл "stop-webserver-monitor.bat", содержание которого аналогично файлу "stop-webserver.bat" с добавлением в самый конец следующей строки:
TASKKILL /F /IM ApacheMonitor.exe /T
Теперь для запуска всего инструментария понадобится запустить файл "start-webserver-monitor.bat", или "start-webserver.bat", а для остановки "stop-webserver.bat". При желании можно переименовать эти файлы, переместить их в любое другое место из папки "C:\apache", либо создать на данные файлы ярлыки, например, на рабочий стол.
За нарушения БАН!