Как отключить просмотр каталогов? - PullRequest
209 голосов
/ 27 марта 2010

Я хочу отключить просмотр каталога папки / galerias и всех подкаталогов

Индекс / Галерея / 409

* Parent Directory
* i1269372986681.jpg
* i1269372986682.jpg
* i1269372988680.jpg

Ответы [ 12 ]

371 голосов
/ 27 марта 2010

Создайте файл .htaccess со следующим:

Options -Indexes

это второй вариант, если у вас есть .htaccess или нет но конфигурация apache должна быть у всех,

, поэтому вам нужно открыть конфигурацию apache с помощью приведенной ниже команды. vim /etc/httpd/conf/httpd.conf

найти строку Опции Индексы FollowSymLinks

изменить с помощью этого

Опции FollowSymLinks

сохраните и выйдите из файла и перезапустите сервер apache с помощью этой команды

служба sudo httpd restart

268 голосов
/ 16 июля 2015

Лучший способ сделать это - отключить его с помощью веб-сервера apache2. В моем Ubuntu 14.X - открыть /etc/apache2/apache2.conf изменить с

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

до

<Directory /var/www/>
        Options FollowSymLinks
        AllowOverride None
        Require all granted
</Directory>

затем перезапустите apache:

sudo service apache2 restart

Это отключит список каталогов для всех папок, которые обслуживает apache2.

35 голосов
/ 07 октября 2016

Помимо двух упомянутых выше методов (отредактируйте / etc / apache2 / apache2.conf или добавьте Опции -Indexes в файле .htaccess), вот еще один

a2dismod autoindex

Перезагрузите сервер apache2 впоследствии

sudo service apache2 restart
27 голосов
/ 27 марта 2010

Редактировать / Создать .htaccess файл внутри /galerias с этим:

Options -Indexes

Просмотр каталогов обеспечивается модулем mod_autoindex .

22 голосов
/ 29 апреля 2016

Вы можете поместить пустой файл с именем index.html в каждый каталог, который вы не хотите перечислять. Это имеет несколько преимуществ:

  • Это (обычно) требует нулевой конфигурации на сервере.
  • Он будет продолжать работать, даже если администратор сервера решит использовать «AllowOverride None» в конфигурации сервера. (Если вы используете файлы .htaccess, это может привести к появлению большого количества сообщений «Ошибка 500 - внутренняя ошибка сервера» для ваших пользователей!).
  • Он также позволяет вам перемещать файлы с одного сервера на другой, опять же, без необходимости связываться с конфигурацией apache.

Теоретически, автоиндексирование может быть вызвано другим файлом (это контролируется опцией DirectoryIndex), но я еще не сталкивался с этим в реальном мире.

16 голосов
/ 04 июля 2014

При настройке безопасного веб-сервера apache важно отключить просмотр каталогов. По умолчанию apache поставляется с включенной функцией, но всегда полезно отключить ее, если она вам действительно не нужна. Откройте файл httpd.conf в папке apache и найдите строку, которая выглядит следующим образом:

Options Includes Indexes FollowSymLinks MultiViews

затем удалите слово Indexes и сохраните файл. Перезапустите Apache. Вот и все

5 голосов
/ 08 августа 2017

Если вы решите изменить файл httpd.conf, чтобы решить эту проблему, и у вас есть несколько директив параметров, то вы должны добавить - или + перед каждой директивой. Пример:

Опции -Indexes + FollowSymLinks

3 голосов
/ 06 марта 2015

Это не ответ, просто мой опыт:

На моем Ubuntu 12.04 apache2 не нашел Indexes ни в apache2.conf, ни в httpd.conf, к счастью я нашел его в sites-available/default. После удаления теперь не отображается список каталогов. Возможно, придется сделать это за sites-available/default-ssl.

2 голосов
/ 08 сентября 2017

Откройте файл .htaccess и введите следующий код в

Options -Indexes

Убедитесь, что вы нажали клавишу ENTER (или клавишу RETURN, если вы используете Mac) после ввода слов «Опции-Индексы», чтобы файл заканчивался пустой строкой.

1 голос
/ 24 февраля 2017

Попробуйте это в своем коде:

IndexIgnore *
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...