Показать сообщение отдельно
Старый 20.12.2010, 18:43   #2
KiriX
Умный
Старожил
 
Аватар для KiriX
 
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
KiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человекKiriX Реально хороший человек
По умолчанию

Установка и Apache HTTP Server 2.2.x (на основе 2.2.17)
Сайт разработчика: http://www.apache.org
Скачайте дистрибутив последней стабильной версии (Win32 Binary (MSI Installer)): http://httpd.apache.org/download.cgi
Ставим в штатном режиме - всё по умолчанию, можно ничего не менять.

В корне диска необходимо создать каталог «apache» - в нем будут лежать ваши виртуальные хосты (домены), глобальный файл журнала ошибок «error.log» (создается программой при первом запуске, автоматически), глобальный файл доступа «access.log» (создается автоматически). В каталоге «apache» создаем еще одну пустую папку - «localhost», в которой, в свою очередь, создаем папку «www», именно в последней и надо будет держать наше добро в виде локальных скриптов. Такая, казалось бы странная структура каталогов, продиктована схожей схемой построения каталогов в системах Unix, и призвана упростить в дальнейшем ее понимание и использование.

Далее в директории, куда был установлен Apache, необходимо найти и открыть в текстовом редакторе файл «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"
  • Назначаем корневую директорию управления сайтами (немного раньше мы её уже создали):
Код:
DocumentRoot "C:/apache"
  • Найдите данный блок:
Код:
<Directory />
   Options FollowSymLinks
   AllowOverride None
   Order deny,allow
   Deny from all
   Satisfy all
</Directory>
  • И замените его на нижеследующий:
Код:
<Directory />
   Options Includes Indexes FollowSymLinks
   AllowOverride All
   Allow from all
</Directory>
  • Удалите или закомментируйте первоначальный блок управления директориями (он нам не понадобится), который без комментариев выглядит примерно так:
Код:
<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs">
   Options Indexes FollowSymLinks
   AllowOverride None
   Order allow,deny
   Allow from all
</Directory>
  • Найдите блок:
Код:
<IfModule dir_module>
   DirectoryIndex index.html
</IfModule>
  • Замените его на:
Код:
<IfModule dir_module>
   DirectoryIndex index.html index.htm index.shtml index.php
</IfModule>
  • Найдите строку:
Код:
ErrorLog logs/error.log
  • Замените на нижеследующую (в этом случае просматривать глобальный файл ошибок сервера будет удобнее):
Код:
ErrorLog C:/apache/error.log
  • Найдите строку:
Код:
CustomLog logs/access.log common
  • Замените на:
Код:
CustomLog C:/apache/access.log common
  • Для работы SSI (включения на стороне сервера) следующие строки, находящийся в блоке <IfModule mime_module>, необходимо найти и раскомментировать:
Код:
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
  • Добавьте ниже, в тот же блок <IfModule mime_module>, две строки:
Код:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
  • И, наконец, найдите и раскомментируйте строки:
Код:
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"

Теперь откройте файл «httpd-vhosts.conf» находящийся в директории «conf\extra», и произведите в нём следующие изменения:

Существующие блоки примеров виртуальных хостов необходимо закомментировать, либо удалить, и вставить нижеследующее:

Код:
<VirtualHost *:80>
   DocumentRoot C:/apache/localhost/www
   ServerName localhost
   ErrorLog C:/apache/localhost/error.log
   CustomLog C:/apache/localhost/access.log common
</VirtualHost>
Пример создания виртуального хоста
При необходимости установки собственных виртуальных хостов сделайте следующее:
Откройте файл «httpd-vhosts.conf», и создайте в нём блок, примерно, следующего содержания:
Код:
<VirtualHost *:80>
   # Папка, в которой будет корень вашего хоста.
   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
</VirtualHost>
Затем в каталоге «apache», создайте папку «test.ru» (прямо так, с точкой), в которой, в свою очередь, создайте папку «www».

Следующий шаг создания виртуального хоста – это изменение файла C:\WINDOWS\system32\drivers\etc\hosts операционной системы. Откройте данный файл и добавьте в него две строки:
Код:
127.0.0.1 test.ru
127.0.0.1 www.test.ru
Теперь перезапустите сервер Apache ярлыком «Restart», находящимся в меню «Start», откройте браузер, введите в адресной строке test.ru или http://www.test.ru/ и вы окажетесь в своем виртуальном хосте. Только будьте внимательны, теперь вы сможете попасть на оригинальный сайт с именем виртуального хоста (http://www.test.ru/ если таковой существует), только закомментировав либо удалив строку: 127.0.0.1 http://www.test.ru/, в вышеупомянутом файле «hosts».

Документация Apache, при запущенном сервере, доступна по адресу http://localhost/manual/

Установка и настройка веб-сервера Apache – завершена.

KiriX вне форума   Ответить с цитированием
3 пользователя(ей) сказали cпасибо:
Gerald (20.12.2010), lovepsone (22.09.2011)