После переноса некоторых моих сайтов на сервер под управлением Debian 6 (раньше была ubuntu), появилась проблема – в моей wiki можно было свободно просматривать содержимое директорий… Причем заметил я это только после тщательного анализа проиндексированных страниц сайта… Поздно спохватился…
Поскольку у меня VPS, а все-таки shared-хостинги сейчас тоже популярны, приведу инструкции для обоих вариантов.
.
- Запрет просмотра директорий на всем виртуальном хосте в Debian\Ubuntu
Для виртуального/выделенного сервера:
Для запрета «индексации» содержимого папок, нужно добавить следующую директиву в файл httpd.conf (у меня apache2.conf):
Options -Indexes
В данной строчке важную роль играет «-» он указывает на запрет определенной функции, в нашем случае это «Indexes«. После добавления директивы, нужно перезагрузить apache, командой:
service apache2 restart
.
Для shared-хостинга:
Создаете файл в корневой директории сайта, с именем .htaccess и вводите в него ту же строчку, что и для сервера.
Options -Indexes
Только теперь apache перезагружать не надо (да вы и не сможете )!
.
- Установка индексных страниц по умолчанию для папок
Еще одним методом защиты от просмотра содержимого директории является установка индексного файла, который(если он есть) в свою очередь будет выводится вместо списка файлов.
По умолчанию индексными файлами являются index.php index.html index.htm, т.е. если у вас в папке лежат файлы index.php и index.html, то по умолчанию должен открытьсяindex.html(так уж повелось), если index.html нет, то откроется index.php и т.д.
.
Для виртуального/выделенного сервера:
Для установки своих значений, нужно прописать в httpd.conf, следующее:
DirectoryIndex drugoy-file.php drugoy-file.html drugoy-file.htm
После установки данной директивы по умолчанию будут выводится на экран файлы с именем drugoy-file.php, drugoy-file.html и т.д.
После выполнения любых действий с конфигом нужно перезагружать apache!
Для shared-хостинга:
Нужно создать в корневой директории сайта файл с именем .htaccess и вписать туда строку:
DirectoryIndex drugoy-file.php drugoy-file.html drugoy-file.htm
Строка абсолютно идентична с той, что вносится в конфиг апача сервера, только тут, после сохранения файла, изменения вступают в силу мгновенно.
.
После выполнения этих действий, пользователю зашедшему в вашу директорию, сервер выдаст сообщение с 403 ошибкой (эта ошибка обозначает что доступ запрещен).
.
Как установить свою страницу этой ошибки и еще многих других, я расскажу в следующих статьях, чтобы ее не пропустить, подписывайтесь на e-mail рассылку или RSS/