Приветствую Вас Гость | RSS

Ладва Developing

Понедельник, 13.05.2024, 16:17
Главная » Файлы » Web » Руководство

Настройка Apache

Файл "httpd.conf"

Основной файл конфигурации этого сервера - "httpd.conf". Лежит он в каталоге "conf" в root-директории Apache. Вот над ним вам и придеться издеваться. Скажу сразу, если вы не понимаете английского, удалите из этого файла все комментарии и пояснения, оставьте только сами директивы (и закоментированные тоже); таким образом вы сможете быстрее находить нужную директиву, не роясь среди множества непонятных вам пояснений. Синтаксис файла очень простой: "директива значение", все строки не соответствующие этому виду можно удалить.

Внимане! Некоторые директивы могут выглядеть так:

#директива значение


<блок директив />


директива значение


</блок директив>


<блок директив />


# Комментарий


директива значение


# Комментарий


</блок директив>


и т. п. Эти строки удалять не нужно!

Символ комментария в "http.conf" - "#" (решетка). Т. е. все символы, идущие в строке после "#" не воспринимаются сервером. Так вы можете добавлять собственные комментарии. Убирая этот символ перед закомментированными строками вы делаете их доступными для чтения сервером.

Общие настройки

Вам нужно будет сделать правку файла "httpd.conf". У некоторых директив изменить значение, другие раскомментировать, третьи добавить. Далее я приведу список директив и их значений, которые должны присутствовать в файле конфигурации Apache.

Каталог с файлами сервера (не путать с "DocumentRoot"):

ServerRoot "C:/Server/Apache/Apache2"


Привязывает Apache к конкретному порту:

Listen 80


Имя сервера (на работу это не влияет):

ServerName localhost:80


Администратор сервера. Содержит ваш адрес электронной почты, который будет отображаться при некоторых ошибках сервера:

ServerAdmin your@email.name


Вам необходимо создать папки, где будут храниться ваши сайты. По умолчанию Apache устанавливает "DocumentRoot" - "%ServerRoot%/htdocs" (т. е. если вы установили Apache в папку "C:\Server\Apache", то "DocumentRoot" будет выглядеть так: "C:/Server/Apache/Apache2/htdocs"). Вы должны изменить значение "DocumentRoot" на "C:/Sites/home/localhost/www".

DocumentRoot "C:/Sites/home/localhost/www"


Строго следуйте моим инструкциям, чтобы быть уверенными, что все это у вас потом заработает. Создайте на диске "C:" папку "Sites". В ней создайте каталог "home", уже в нем - "localhost",  "mysite". В каждую из этих папок ("localhost", "mysite") положите каталоги "www" (для хранения html документов), "cgi" (для хранения cgi-скриптов), пустые файлы access.log (журнал доступа к серверу) и error.log (журнал ошибок сервера). Т. о. структура каталогов, в которых будут храниться ваши сайты должна выглядеть так:

Зачем это нужно, поймете потом, а сейчас просто сделайте как я говорю.

Далее замените блок "<Directory "C:/Server/Apache/Apache2/htdocs">" на следующее:

<Directory "C:/Sites">


Options Indexes Includes


AllowOverride All


Order allow,deny


Allow from all


</Directory>


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

Задание индексного файла для директории (этот файл сервер будет отображать при обращении к каталогу без указания имени файла):

DirectoryIndex index.php index.html index.html.var


Настройки CGI

Задание псевдонима для каталога с cgi-скриптами "C:\Sites\home\localhost\cgi". При указании пути вида http://localhost/cgi/ или http://localhost/cgi-bin/, Apache будет обращаться к каталогу "C:\Sites\home\localhost\cgi":

ScriptAlias /cgi/ "C:/Sites/home/localhost/cgi/"


ScriptAlias /cgi-bin/ "C:/Sites/home/localhost/cgi/"


Каталог "C:\Sites\home\localhost\cgi" также будет доступен вашим виртуальным хостам при обращении вида "http://имя_виртуального_хоста/cgi-bin/cgi-скрипт.bat". Напрмер, если вы введете в браузере http://localhost/cgi-bin/cgitest.bat, то будет выполнен код, находящийся в файле "C:\Sites\home\localhost\cgi\cgitest.bat", который также доступен по адресу http://localhost/cgi/cgitest.bat. У виртуальных хостов есть свой каталог для cgi-скриптов, доступный по адресу "http://имя_виртуального_хоста/cgi/cgi-скрипт.bat". Каталоги "cgi" не доступны для просмотра в браузере, и при прямом обращении к ним вы получите сообщение об ошибке "403".

Указывает Apache, что файлы с расширением "cgi", "bat", "exe" нужно воспринимать как cgi-скрипты:

AddHandler cgi-script .cgi .bat .exe


Блок "<Directory "C:/Server/Apache/Apache2/cgi-bin">" замените на:

<Directory "C:/Sites/home/localhost/cgi">


AllowOverride None


Options None


Order allow,deny


Allow from all


</Directory>


Языковые настройки

Остальные строки вида "AddLanguage lang .lang" можете закомментировать (если конечно вам не нужна поддержка этих языков):

AddLanguage en .en


AddLanguage ru .ru


Устанавливает языковой приоритет:

LanguagePriority en ru


Настройка кодировок:

AddDefaultCharset WINDOWS-1251


AddCharset WINDOWS-1251 .cp-1251 .win-1251


Настройки PHP

Подключение PHP:

AddType application/x-httpd-php php phtml


ScriptAlias /_php_/ "C:/Server/PHP/"


Action application/x-httpd-php "/_php_/php.exe"


Настройки SSI

Включение SSI:

AddType text/html .shtml


AddHandler server-parsed .shtml .html .htm


Теперь основные дерективы заданы. Для вступления изменений в силу - перезапустите Apache.

Виртуальные хосты

Итак, вы создали каталог "localhost" для хранения и тестирования документов вашего сайта. Но если у вас не один сайт? Можно конечно создать каталоги для других сайтов внутри "localhost" и обращаться к ним "http://localhost/site", но это не совсем удобно. Тем более, что Apache дает возможность решить эту проблему с помощью виртуальных хостов. Есть два вида виртуальных хостов: отдельные для каждого IP адреса и использующие один IP (name-based хосты). Я объясню как настроить последние.

Вы уже создали ранее папки localhost" и "mysite" в директории "home". Это и есть корни ваших виртуальных хостов. В них должны быть папки "www" и "cgi", файлы access.log и error.log. Т. е. все так же как и с каталогом "localhost". Все ваши виртуальные хосты будут использовать IP "127.0.0.1".

Добавьте в файл "httpd.conf" следующее:

NameVirtualHost 127.0.0.1


#localhost
<VirtualHost localhost>
ServerAdmin me@localhost
ServerName localhost
DocumentRoot "C:/Sites/home/localhost/www"
ScriptAlias /cgi/ "C:/Sites/home/localhost/cgi/"
ErrorLog C:/Sites/home/localhost/error.log
CustomLog C:/Sites/home/localhost/access.log common
</VirtualHost>
#locahost
<VirtualHost localhost>
ServerAdmin me@localhost
ServerName localhost
DocumentRoot "C:/Sites/home/localhost/www"
ScriptAlias /cgi/ "C:/Sites/home/localhost/cgi/"
ErrorLog C:/Sites/home/localhost/error.log
CustomLog C:/Sites/home/localhost/access.log common
</VirtualHost>
#mysite
<VirtualHost mysite>
ServerAdmin me@mysite
ServerName mysite
DocumentRoot "C:/Sites/home/mysite/www"
ScriptAlias /cgi/ "C:/Sites/home/mysite/cgi/"
ErrorLog C:/Sites/home/mysite/error.log
CustomLog C:/Sites/home/mysite/access.log common
</VirtualHost>

Можно добавить в блоки "<VirtualHost>" и другие параметры, однако лучше управлять виртуальными хостами с помощью .htaccess. Также стоит отметить, что все параметры, не указанные в блоках "<VirtualHost>" или в .htaccess, наследуются от главного хоста (т. е. от "localhost").

Т. о. вы настроили Apache для работы с виртуальными хостами. Имена, естесственно, можно изменить, но при этом будте внимательны с путями!

Теперь определимся с тем, как Windows узнает о существовании виртуальных хостов? Для этого придется отредактировать файл "hosts" (не путать с файлом "hosts.sam"), хранящийся в папке "%WINDOWS%\System32\drivers\etc". Выглядит он примерно так:

# (C) Корпорация Майкрософт (Microsoft Corp.), 1993-1999
#
# Это образец файла HOSTS, используемый Microsoft TCP/IP для Windows.
#
# Этот файл содержит сопоставления IP-адресов именам узлов.
# Каждый элемент должен располагаться в отдельной строке. IP-адрес должен
# находиться в первом столбце, за ним должно следовать соответствующее имя.
# IP-адрес и имя узла должны разделяться хотя бы одним пробелом.
#
# Кроме того, в некоторых строках могут быть вставлены комментарии
# (такие, как эта строка), они должны следовать за именем узла и отделяться
# от него символом '#'.
#
# Например:
#
# 102.54.94.97 rhino.acme.com # исходный сервер
# 38.25.63.10 x.acme.com # узел клиента x


127.0.0.1 localhost


В него нужно будет дописать две строки:
127.0.0.1 la2base

127.0.0.1 mysite


Теперь, при обращении http://la2base загрузится содержимое "C:\Sites\home\localhost\www".

Для вступления изменений в силу - перезапустите Apache.

 

Категория: Руководство | Добавил: Kaboom 02.02.2010, 04:16 | Теги: Web, apache, руковдство
Просмотров: 3088 | Загрузок: 0 | Комментарии: 74 | Рейтинг: 0.0/0
Всего комментариев: 16
1 Mepexpill  
0
очень интересно, спасибо

2 Mewexelia  
0
Мне еще вполне стала интерестна публикация http://designmosaique.com/index.php?page=shop.product_details&flypage=flypage.tpl&product_id=350&category_id=9&option=com_virtuemart&Itemid=8 - телевизор Витязь 63CTV6281 Art-Master

3 Mewexelia  
0
Мне еще вполне стала интерестна заметка http://www.sayts.ru/shop/index.php?productID=162 - плеер Philips DVP3362K

4 Mewexelia  
0
Также хочу просмотреть http://www.arealmusic.com/igry/8047-spellforce-2-shadow-wars-2006rusrepack-by-sxsxl.html - скачать spellforce 2, если кто может сказать что-либо об этом, пожалуйста, расскажите

5 Moittykic  
0
Люблю гулять на дискотеках, просматривать http://www.fanat-css.ru/load/karty_cs/jail_karty/ba_jail_electric_cloneworks/136-1-0-1293 - counter strike source карты

6 bignowAvoig  
0
Одно из последних нововедений является "http://tretyakovalena.com/publ/4-1-0-101 - ранетки репетиция", что добавилось недавно. Следите за обновлениями

7 eremnefly  
0
Надеюсь что некоторым понравится статья http://zkino.net/load/drama/sredi_volkov_entrelobos/8-1-0-1598 - смотреть фильм среди волков бесплатно

8 diamisomy  
0
Хотя моя лучшая статья http://cs-ua.net/news/bluemarine_computer_love/2011-07-10-114 - торрент BlueMarine - Computer Love

9 diamisomy  
0
Люблю лентяйничать и узнавать про http://www.wmz-mail.com/view.php?video=WlSBl0YUZcc&title=Shakira+-+Que+Me+Quedes+Tu - Shakira - Que Me Quedes Tu онлайн. И вообще я довольно энергичен

10 Appehance  
0
Очень интересен сайт где встретила http://restros.info/films/93-choknutaya-i-pridurok-ugly-aur-pagli-2008-dvdrip.html - Чокнутая и придурок смотреть

11 Coigranteetat  
0
Люблю веселится на дискотеках, просматривать http://rucatalog.ucoz.org/dir/12 - сайты Отдых и развлечения

12 Apporgoliqq  
0
http://www.pprog.ru/forum/user/5780/ - http://www.pprog.ru/forum/user/5780/
http://prompolit.ru/97163 - http://prompolit.ru/97163
http://konvektor-gub.blogrus.ru/ - http://konvektor-gub.blogrus.ru/
http://kondensator-uat.blogrus.ru/ - http://kondensator-uat.blogrus.ru/
http://inkonvektor.wordpress.com/ - http://inkonvektor.wordpress.com/

13 Kisksnanyww  
0
http://kulinar-profi.ru/ - http://kulinar-profi.ru
http://STROYMAGNIT.ru/ - http://STROYMAGNIT.ru
http://TOBACCO24.RU/ - http://TOBACCO24.RU
http://basetea.ru/ - http://basetea.ru
http://DELESTROY.ru/ - http://DELESTROY.ru

14 Lrzi9dw3  
0
http://www.agrariadivita.it/index.php?option=com_k2&view=itemlist&task=user&id=140818 - web load balancer
http://www.jecn.org/joomla/index.php?option=com_k2&view=itemlist&task=user&id=82746 - bericap
http://www.hifistudio-weerdinge.nl/dehifistudioweerdinge/index.php?option=com_k2&view=itemlist&task=user&id=17946 - seattle baking school

15 Lrr3yrfi  
0
http://www.webtrekitalia.it/plesk-stat/webstat/usage_201611.html - free email address with own domain name
http://bakalas-foundation.gr/webalizer/usage_201611.html - develop iphone apps on windows
http://flbs.se/webalizer/usage_201611.html - is open heart surgery dangerous

16 OmTkMF  
0
But the Skeleton Gambler King is at the level of God, and he was killed by you, so I think your strength should be at God level, what do you think The Skeleton Clan Patriarch continued <a href=http://vardenafil.buzz>acheter du levitra</a>

Имя *:
Email *:
Код *: