Инструкция DocumentRoot определяет каталог, в котором хранятся документы веб-сервера. Из соображений безопасности файлы настройки хранятся в другом каталоге. Как мы уже видели, инструкция DocumentRoot в Solaris представлена следующим образом:
DocumentRoot "/var/apache/htdocs"
Чтобы применить инструкции к определенным каталогам, необходимо создать для этих инструкций контейнер (container). Следующие три инструкции httpd.conf применяются для создания контейнеров:
<Directory pathname> - Инструкция Directory создает контейнер для инструкций, относящихся к каталогу pathname. Любая инструкция настройки, следующая за инструкцией Directory и предшествующая следующему оператору </Directorу>, применяется только к указанному каталогу.
<Location document> - Инструкция Location создает контейнер для инструкций, относящихся к конкретному документу (document). Любая инструкция настройки, следующая за инструкцией Location и предшествующая следующему оператору </Location>, применяется только к указанному документу.
<Files filename> - Инструкция Files создает контейнер для инструкций, относящихся к конкретному файлу (filename). Любая инструкция настройки, следующая за инструкцией Files и предшествующая следующему оператору </Files>, применяется только к указанному файлу. Имя файла (filename) может указывать одновременно несколько файлов, если содержит один из специальных символов Unix, * или ?. Кроме того, если за инструкцией Files следует необязательный символ " (тильда), имя файла (filename) интерпретируется как регулярное выражение.
С каталогами и файлами легко разобраться, поскольку это знакомые каждому администратору компоненты файловой системы Unix. Понятие документа характерно уже не для файловой системы, но для веб-сервера. Страница с информацией, отображаемая в ответ на запрос к веб-серверу, является документом: она может состоять из многих файлов, хранящихся в различных каталогах. Контейнер Location позволяет обращаться со сложными документами как с единичными сущностями. Ниже в тексте главы мы рассмотрим примеры использования контейнеров Location и Files. А пока обратимся к контейнерам Directory.
В настройках Solaris определены контейнеры Directory для корневого каталога сервера и каталога DocumentRoot:
<Directory /> Options FollowSymlinks AllowOverride None </Directory> <Directory "/var/apache/htdocs"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory>
- Назад
- Вперёд >>