1

Я запускаю Apache на компьютере с Windows для локального тестирования, и я новичок в этом.

В настоящее время, если я перейду на localhost/ в веб-браузере, он отобразит страницу index.html если она существует. В противном случае отобразится список каталогов.

  • Как сделать так, чтобы при переходе в корневой каталог отображалось больше, чем index.html? Что мне нужно, так это то, что если есть: index.html , index.htm или index.php , он перейдет к одному из них.
  • Как отключить отображение корней каталогов? Я хотел бы вернуть ошибку 403 Forbidden, если страница индекса не существует.

1 ответ1

2

Сначала для индексной части. Откройте файл httpd.conf и найдите этот раздел.

#
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
# The index.html.var file (a type-map) is used to deliver content-
# negotiated documents.  The MultiViews Option can be used for the
# same purpose, but it is much slower.
#        
DirectoryIndex index.htm index.html index.html.var

В большинстве случаев вы не будете добавлять index.php здесь, так как он будет находиться в отдельном файле conf или в php.conf.

Тогда для вашего списка каталогов есть несколько вариантов. Вы можете использовать файл .htaccess или поместить его в httpd conf. Для файла conf вы можете добавить что-то вроде этого.

<Directory /path/to/directory>
   Options -Indexes
</Directory> 

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .