Подобная проблема может возникнуть по трем причинам:
- Сайт загружен в неверную директорию.
- Отсутствует индексный файл (index.html либо index.php).
- Некорректно настроен веб-сервер.
Поскольку с первой причиной справиться не составит абсолютно никакого труда даже начинающему вебмастеру, мы рассмотрим вторую и третью причины.
Настройка листинга каталога и индексных страниц может быть выполнена средствами файлов httpd.conf (apache2.conf) и .htaccess.
По умолчанию, в качестве первой страницы сайта открывается файл с именем index.html. Данный параметр задаётся директивой DirectoryIndex в файле httpd.conf или apache2.conf.
Если вместо первой страницы сайта отображается список файлов, то, первым делом необходимо убедиться, что в корневой директории виртуального хоста есть файл index.html.
При желании можно изменить имя и тип индексных файлов по умолчанию. Это можно сделать или глобально для всего сервера (при помощи указанной выше директивы DirectoryIndex в файле httpd.conf), или локально, в файле .htaccess при помощи той же директивы DirectoryIndex. Пример данной директивы приведен ниже:
DirectoryIndex index.html myindex.html index.pl myindex.php
Если в директории есть несколько индексных файлов (например, myindex.html и index.pl), то будет отображён файл, упомянутый в строке в первую очередь (в данном случае, myindex.html).
В случае, если ни один из указанных файлов не найден, будет отображён список файлов и директорий. Для запрета отображения этого списка в файл .htaccess необходимо добавить запись:
Options –Indexes
В файле httpd.conf данная директива по умолчанию имеет вид Options Indexes, то есть отображение списка файлов разрешено.