С помощью директив, расположенных в блоке Location
, можно задать определенный URL-адрес, предназначенный для обозначения каталогов, файлов или групп файлов. Обозначить группу файлов можно с помощью шаблонов, например, шаблон *.html определяет все файлы, имена которых заканчиваются на .html, В URL-адрес не включается протокол и имя сервера. Пример описания блока Location представлен в листинге 16.8.Листинг 16.8. Блок Location
директивы управления доступом
16.4. Файл ротации журналов /etc/logrotate.d/httpd
Файл /etc/logrotate.d/httpd
/etc/logrotate.d/apache — для версий Apache до 2.0) задает параметры ротации журналов веб-сервера, что позволяет поддерживать порядок в журнальном хозяйстве. Пример этого файла приведен в листинге 16.9.Листинг 16.9. Файл /etc/logrotate.d/httpd (Apache 2.0)
/var/log/httpd/*_log {
missingok
notifempty
sharedscripts
postrotate
/usr/bin/killall -HUP httpd
endscript
}
Убедитесь, что режим доступа к файлу /etc/logrotate.d/httpd равен 0640 и владельцем этого файла является пользователь root.
16.5. Системный файл конфигурации /etc/sysconfig/httpd
Этот файл позволяет передать серверу Apache
системную информацию, например, параметры запуска.Предположим, что вы хотите запустить сервер Apache
с включенной поддержкой SSL. Для этого в файл/etc/sysconfig/httpd добавьте строку:OPTIONS="-DSSL"
Вам нужно только добавить нужные параметры в директиву OPTIONS, а обо всем остальном позаботится сценарий запуска /etc/init.d/httpd
/etc/sysconfig/httpd появился в версии Apache 2.0.16.6. Сценарий запуска сервера Apache /etc/init.d/httpd
Стандартный сценарий запуска веб-сервера Apache
устанавливается из того же пакета, что и сам сервер, В версии Apache 2.0 можно вызывать сценарий запуска со следующими параметрами:♦ start
— запуск сервера;♦ stop
— завершение работы сервера;♦ restart
— перезапуск сервера;♦ status
— информация о работе сервера;♦ condrestart
— перезапуск сервера при наличии файла/var/run/httpd.pid. Этот файл создается при запуске сервера и удаляется при его останове. Если файл httpd.pid не удален, значит, сервер не был остановлен корректно: например, произошел сбой системы или банальное отключение питания.Что же касается более старых версий Apache
, то сценарии запуска позволяют указывать куда больше параметров, чем во второй версии:♦ start
— запуск сервера;♦ stop
— завершение работы сервера;♦ restart
— перезапуск сервера;♦ reload
— перезагрузка сервера. В отличие от перезапуска, когда сервер сначала останавливается командой kill (то есть, просто «убивается»), а потом запускается, при перезагрузке серверу передается сигнал HUP. Перезагрузка может понадобиться при изменении файла конфигурации сервера, чтобы изменения вступили в силу;♦ condrestart
— то же, что и одноименный параметр, описанный выше;♦ status
— информация о работе сервера;♦ fullstatus
— более подробная информация о работе сервера;♦ help
— подсказка;♦ configtest
— проверка файла конфигурации.16.7. Графические конфигураторы Apache
Практически все параметры веб-сервера Apache
можно установить, используя конфигуратор netconf (п.14.1.1). Запустите netconf от имени суперпользователя и выберите Server Tasks, а затем Apache Web-server. С помощью netconf вы легко можете определить виртуальные узлы, назначить параметры подкаталогов, определить спецификацию каталогов и модулей, а также установить параметры модуля mod_ssl (см. рис. 16.2), настройка которого рассмотрена далее в этой главе.Рис. 16.2
. Конфигурирование модуля mod_sslВ дистрибутив Fedora Core включен более удобный конфигуратор system-config-httpd
(рис. 16.3).Рис. 16.3
. system-config-httpd16.8. Каталоги пользователей
Директива UserDir
включает поддержку пользовательских каталогов. Эта директива определяет общее название подкаталога в домашних каталогах всех пользователей. По умолчанию используется каталог public_html. Данная возможность очень удобна при использовании ее в большой корпорации, где каждый сотрудник имеет собственную страничку. Раньше эта возможность часто использовалась на серверах, предоставляющих бесплатный хостинг. Может быть, помните адреса вида http://www.chat.ru/~mypage?