• UserDir
. Если первый из каталогов, предшествующих имени файла в составе URL, начинается с символа ~
, Apache интерпретирует его имя как имя пользователя и старается найти файл в рабочем каталоге соответствующего пользователя. Директива UserDir
указывает имя подкаталога, в котором следует искать файл. Предположим, что для данной директивы задано значение public_html
и удаленный пользователь ввел в поле адреса броузера URL http://www.threeroomco.compilation/~abrown/photos.html
. Тогда Apache попытается вернуть пользователю файл photos.html
, расположенный в подкаталоге public_html
рабочего каталога пользователя abrown
. Если задано значение disabled
данной директивы, обращение к файлам, находящимся в рабочих каталогах пользователей, запрещено. Если вы хотите запретить доступ лишь к части пользовательских каталогов, вам надо после ключевого слова disabled
указать имена пользователей, рабочие каталоги которых закрыты для обращения. Данная директива часто помещается в состав директивы
, которая проверяет, загружен ли модуль Apache, предназначенный для поддержки пользовательских каталогов. (Модули Apache будут рассматриваться в следующем разделе.)
• DirectoryIndex
. Некоторые URL не содержат имя файла; в них указано лишь имя каталога (в некоторых случаях оно завершается косой чертой). Когда сервер Apache получает подобный URL, он сначала старается найти DirectoryIndex
. В большинстве случаев по умолчанию принимается имя index.html
, установленное в качестве значения данной опции при инсталляции сервера. При необходимости вы можете задать другое имя файла. Если пользователь введет URL http://www.threeroomco.com/public/
, Apache вернет файл index.html
, находящийся в подкаталоге public каталога, указанного с помощью директивы DocumentRoot
. Если вы укажете несколько файлов индекса, Apache станет поочередно искать все файлы.
Во многих дистрибутивных пакетах при установке Apache задаются каталоги, которые вполне можно использовать в процессе работы сервера. Вам надо лишь просмотреть конфигурационный файл, выяснить имена этих каталогов и поместить в них файлы, которые Web-сервер должен предоставлять пользователям. Если вы предпочитаете размещать свои файлы в других каталогах, вам надо внести соответствующие изменения в состав конфигурационного файла. Возможно, вам потребуется изменить файл индекса. Необходимость в этом возникает в основном тогда, когда вы устанавливаете Apache взамен другого сервера, в котором использовалось другое имя файла индекса.
Загрузка модулей Apache
Одно из преимуществ Apache состоит в том, что этот Web-сервер является расширяемым. Программист может написать новый модуль, реализующий дополнительные возможности, при этом исходный код Apache остается неизменным. Более того, для использования нового модуля не нужно даже перекомпилировать сервер. Посредством модулей реализуются управление доступом, разбор дополнительной информации, передаваемой клиентами, и многие другие функции. Основная часть стандартных функций Apache также реализована в виде модулей.
Просмотрев содержимое конфигурационного файла httpd.conf
, вы найдете в нем ссылки на модули, формируемые посредством директивы LoadModule
. Пример подобной ссылки приведен ниже.
LoadModule mime_module lib/apache/mod_mime.so
В качестве значения данной директивы задается внутреннее имя модуля (в данном примере mime_module
) и имя файла, в котором содержится сам модуль (lib/apache/mod_mime.so
). В данном случае имя файла указывается относительно каталога, заданного посредством директивы ServerRoot
, но при желании вы можете указать полный путь.
Модули, которые используются часто, можно непосредственно встраивать в двоичные файлы Apache. Чтобы определить, какие модули уже содержатся в исполняемых файлах, надо задать команду httpd -l
(или apache -l
). В некоторых случаях модули, встроенные в состав Apache или загруженные посредством LoadModule
, необходимо активизировать, включив для этого в конфигурационный файл директиву AddModule
.
AddModule mod_mime.с
В качестве значения директивы AddModule
задается имя файла с исходным кодом модуля. Для важных модулей в конфигурационном файле Apache содержится как директива LoadModule
, так и директива AddModule
.
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии