Скрыть содержимое каталога от показа при прямом доступе к URL

На моем сайте, если вы просматриваете http://example.com/images/ содержимое всего каталога показано так:

Нужно не показывать это

Как я могу сделать так, чтобы этого не случилось?

Могу ли я создать .htaccess файл в этом каталоге? Или есть лучший способ? Я действительно хочу заблокировать список каталогов для всего сайта (т.е. для каждого каталога на этом сайте).

Я полагаю, что это либо что-то, что должно быть сделано в Apache, либо с использованием глобального .htaccess файл и поместив его в public_html папка, возможно?

РЕДАКТИРОВАТЬ

Я отвлек это, используя index.php файл, но я все еще чувствую, что безопасность является проблемой здесь, как я могу это исправить навсегда?

2 ответа

В зависимости от того, как ваш <directory> директивы определены, у вас есть несколько вариантов.

Для этого каталога, Options -Indexes выключит это. Это можно сделать в любом месте файла httpd.conf, чтобы отключить подобные вещи.

Кроме того, в файле.htaccess в этом конкретном каталоге вы можете поместить IndexIgnore * все равно выдаст список, но скроет все содержимое. Немного хакерский, но если вы не можете изменить httpd.conf может работать в крайнем случае.

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

В обоих случаях ищите строку, которая начинается с Options и некоторые другие слова; если он содержит Indexesизмените его на -Indexes; если он не содержит его, добавьте его в строку.

Если нет Options директива, просто добавь Options -Indexes, и это все.

Другие вопросы по тегам