2015-03-20 7 views
2

Простой вопрос:Зачем нам нужен <Directory> в файле Apache .conf?

<VirtualHost *:80> 
    ServerName notes.example.com 
    DocumentRoot /var/www/notes 

    <Directory "/var/www/notes"> 
     Require all granted 
     Options +Indexes 
    </Directory> 
</VirtualHost> 

На первый взгляд, это работает точно так же, как просто положить:

<VirtualHost *:80> 
    ServerName notes.example.com 
    DocumentRoot /var/www/notes 
</VirtualHost> 

Так зачем нам это <Directory> заявление в любом случае?

Я нашел несколько примеров, на которых некоторые из них использовали <Directory> или <Proxy>, а другие просто устанавливали свои настройки под ветку <VirtualHost>.

ответ

1

Потому что вы можете определить конкретные параметры для определенных каталогов.

Вы могли бы сделать

<Directory "/var/www/notes/private"> 
    Options -Indexes 
<Directory> 

или что-то подобное. DocumentRoot будет работать сам по себе, но если вы хотите добавить параметры каталога, вам нужно будет использовать тег Directory.

Смежные вопросы