div.main {margin-left: 20pt; margin-right: 20pt}Apache & Linux Источник: http://nix.h1.ru Автор: SHuRuP email: mailto:shurup@xakep.ru?subject=nix www:
http://nix.h1.ru/ icq:
76011665
В наше время практически у каждого уважающего себя
юзера с доступом в инет есть своя пага, и ты, наверное, не исключение.
Безусловно тебе хочется, чтобы твой сайт модно смотрелся на серваке, а это
означает, что ты хочешь постоянно лицезреть, как он выглядит после нового
модного скрипта. Из всего этого можно сделать вывод, что тебе необходим
локальный web-сервер с поддержкой выполнения cgi-приложений (aka
perl-скриптов), php других прелестей веб-дизайна. В этой статье будет
рассмотрена настройка популярного веб-сервера со всевозможными примочками
(а именно Apache) под Linux, так как это самая простая операционная
система из семейства *nix, а фанаты виндов пусть мучаются со всякими там
ActivePerl'ами и периодическими подвисаниями их детища :).
Установка Apache'а нас совершенно не колбасит по причине его наличия во
всех известных линухах (если же у тебя он каким-то образом таинственно
пропал или тебе не терпится скачать версию посвежее и навешать всяких
радостей на него, то рекомедуется посетить http://apache.org).
Конфиги находятся в /etc/httpd/conf/, нас интересуют
httpd.conf, commonhttpd.conf. В первом из них расположились главные
настройки web-сервера, в "Main Configuration Section" нас уже злобно
предостерегают что-либо менять, пока мы не станем реальными гуру... Этот
раздел должен выглядеть приблизительно так:
ServerType standalone
ServerRoot /etc/httpd #ServerName localhost #LockFile
/etc/httpd/httpd.lock PidFile /var/run/httpd.pid ScoreBoardFile
/etc/httpd/httpd.scoreboard ErrorLog logs/error_log LogLevel warn
ResourceConfig /dev/null AccessConfig /dev/null
Здесь можно ничего не трогать, конечно же кроме ServerName, где localhost
смотрится не стильно (чтобы этот параметр заработал надо снять значок
комментария "#" в начале этой строки). Дальше любопытна секция
"Performance settings Section", в которой присутствуют параметры
Timeout'а, функции KeepAlive (поддержка нескольких одновременных запросов
подключения к нашему серверу), MaxKeepAliveRequests (максимальное
количество таких запросов), KeepAliveTimeout, StartServers (количество
инициализационных серверов), MaxClients (лимит клиентов, которые могут
одновременно коннектиться).
Но все же апогей конфигурирования
Apache'а достигается в commonhttpd.conf! Итак, рассмотрим важнейшие его
свойства:
ServerAdmin root@localhost #e-mail, на который будут
присылаться все траблы сервака DocumentRoot /var/www/nix #корневой
каталог сервера Alias /pix /var/pix #пример алиаса каталога - при
обращении на http://127.0.0.1/pix сервак будет обращаться к каталогу
/var/pix твоего компа ScriptAlias /cgi-bin/ /var/www/nix/cgi-bin/
#пример алиаса каталога cgi-скриптов - аналогично, с Alias
AddIconByType (TXT,/icons/text.gif) text/* #добавление различных
иконок в каталоги сервера DefaultIcon /icons/unknown.gif #дефолтовая
иконка, которая будет устанавливаться на файлы, к которым таковой нет
AddDescription "tar archive" .tar #добавляет краткое описание к файлам
данного формата
#пример добавления каталога с html-файлами
< Directory /var/www/nix_new> AllowOverride All Options
FollowSymLinks MultiViews Order allow,deny Allow from all <
/Directory>
#пример добавления каталога с cgi-скриптами
< Directory /var/mywww/nix/cgi-bin> AllowOverride All
Options +ExecCGI -Includes -Indexes SetHandler cgi-script <
/Directory>
#пример добавления файла с поддержкой iss <
Location /new/index.shtml> Options +Includes < /Location>
#пример добавления каталога защищенных cgi-скриптов <
Directory /var/www/nix/protected-cgi-bin> AllowOverride None
Options ExecCGI Order deny,allow Deny from all Allow from
127.0.0.1 < /Directory>
После всех изменений осталось
просто запустить httpd ( /etc/rc.d/init.d/httpd start ), а также (по
желанию) занести в инициализацию Linux'а ( ntsysv
).
|