On-Line Библиотека www.XServer.ru - учебники, книги, статьи, документация, нормативная литература.
       Главная         В избранное         Контакты        Карта сайта   
    Навигация XServer.ru




Загрузка...




 

Apache & Linux

В наше время практически у каждого уважающего себя юзера с доступом в инет есть своя пага, и ты, наверное, не исключение. Безусловно тебе хочется, чтобы твой сайт модно смотрелся на серваке, а это означает, что ты хочешь постоянно лицезреть, как он выглядит после нового модного скрипта. Из всего этого можно сделать вывод, что тебе необходим локальный 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 ).


Литература по Linux