Я просто настроил сервер apache2 / mysql, чтобы с ним поиграться. Но я обнаружил нечто иное, чем то, что видел раньше. Корневой каталог указывает на / var / www / html /. Я проверил файл /etc/apache2/apache2.conf и сказал
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
Это говорит о том, что корневой каталог указывает на / var / www /. Это ошибка? И еще я хочу знать, почему они сделали / var / www / html вместо / var / www /.
Обычно конфигурация по умолчанию (например, /var/www/html
) определяется в /etc/apache2/sites-enabled
и отменяет то, что у вас apache2.conf
. Это нормальное поведение, и обычной практикой является добавление конфигурации vhost в виде отдельных файлов в /etc/apache2/sites-available
затем символически связать включенные с /etc/apache2/sites-enabled
.
Если вы хотите отредактировать конфигурацию по умолчанию, отредактируйте /etc/apache2/sites-available/000-default.conf
.
В Directory
директива не определяет корень. Скорее, он определяет, как Apache должен обрабатывать файлы внутри этого каталога, если они обслуживаются. Файлы вне корня также могут обслуживаться, если к ним доступ осуществляется через Alias
.
Причина, по которой конфигурация Apache устанавливает параметры для всех /var/www
может быть так, что у вас может быть несколько сайтов, каждый со своим DocumentRoot
. Таким образом, вам не нужно повторять Directory
на каждом сайте.
вы можете настроить корневой каталог везде, где захотите. это не ошибка. у него была причина, по которой они его изменили. они хотят не помещать файлы прямо в новый каталог.