Что делает <Каталог/>, запись означает в конфигурации по умолчанию Apache2

Это из файла /etc/apache2/sites-enabled/000-default прямо после установки apache2 из репозиториев.

DocumentRoot /var/www
<Directory />
        Options FollowSymLinks
        AllowOverride None
</Directory>
<Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
</Directory>

Что настраивает та первая часть? Для меня это смотрит, что DocumentRoot должен быть / вместо этого/var/www позволяющий это <Directory /> часть, чтобы иметь любой эффект, но я должен быть неправым.

6
задан 29.09.2010, 21:42

1 ответ

Это настраивает перманент для корня (' /' dir в этом контексте, это - ничто, чтобы сделать с закрытием тега), и полностью вниз, если не переопределено. Базируйтесь вниз => Ваш весь диск. Затем это действительно переопределяет его для Вашего DocRoot.

Таким образом в этом файле, это настраивает очень очень строгий перманент (AllowOverride Ни один) на целом диске, затем следующая строка файла конфигурации Каталога открывает его специально для Вашего DocRoot.

Этот строгий перманент на / также ускоряет вещи. Это разрешает FollowSymLinks, что означает, что веб-сервер не должен делать lstat () запрос к каждому каталогу полностью для укоренения, сохраняя некоторый диск syscalls. AllowOverrideNone также подразумевает, что Вы не должны искать .htaccess файлы в тех каталогах, сокращая некоторый более (медленный) диск syscalls. Помните, что для каждого запроса, веб-сервер должен считать каждый каталог от dir жизнями содержания в полностью для укоренения. С этим перманентом Вы срываете те проверки, устраняя хиты к диску, которые являются настоящим врагом.

4
ответ дан 07.12.2019, 16:21

Теги

Похожие вопросы