По умолчанию apache2.conf содержит следующее:
<Directory /usr/share>
...
<Directory /var/www/>
Почему в одной директиве есть завершающий слеш, а в другой нет? Какая разница?
Побочный вопрос: Если я не хочу делиться ничем из/usr/share, могу ли я просто удалить эту часть или установить ее наТребовать все отклоненные?
решение1
Что касается завершающего слеша, то:https://serverfault.com/a/263219утверждает, аргумент в пользуDirectory
директива должна быть каталогом path. Без слеша это соглашение, но любой синтаксис допустим и имеет тот же результат.
Обратите внимание, что в других сценариях и в сочетании с другими директивами могут быть различия, например, отключениеDirectorySlash
директива может привести к запросам на http://www.example.com/directory-path
получение отображаемых результатов, отличных от запросаhttp://www.example.com/directory-path/
Если я не хочу ничем делиться из /usr/share, могу ли я просто удалить эту часть или установить для нее значение «Требовать все отклонено»?
Сами по себе операторы каталога не делают контент общедоступным.
(Насколько мне известно, только директивы [Script]Alias
и DocumentRoot
и подобные им сопоставляют пути URI с файловой системой.)
Блоки каталогов применяют только определенные настройки к расположениям в файловой системе. Это означает, что вы можете оставить блоки каталогов, такие как для , /usr/share
даже если вы не делитесь контентом оттуда (пока). Это не оказывает никакого влияния на безопасность или производительность.