Как отключить просмотр каталогов?

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

Индекс/galerias/409

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

Ответ 1

Создайте файл .htaccess, содержащий следующую строку:

Options -Indexes

Это один из вариантов. Другой вариант - редактирование файла конфигурации Apache.

Для этого сначала нужно открыть его с помощью команды:

vim /etc/httpd/conf/httpd.conf

Затем найдите строку: Параметры Индексы FollowSymLinks

Измените эту строку на: Опции FollowSymLinks

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

sudo service httpd restart

(у вас есть руководство со скриншотами здесь.)

Ответ 2

Лучший способ сделать это - отключить его с помощью web-сервера 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.

Ответ 3

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

a2dismod autoindex

Перезагрузите сервер apache2

sudo service apache2 restart

Ответ 4

Измените/создайте файл .htaccess внутри /galerias следующим образом:

Options -Indexes

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

Ответ 5

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

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

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

Ответ 6

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

Options Includes Indexes FollowSymLinks MultiViews

затем удалите слова "Индексы" и сохраните файл. Перезапустите apache. Что он

Ответ 7

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

Параметры -Indexes + FollowSymLinks

Ответ 8

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

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

Ответ 9

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

Options -Indexes

Убедитесь, что вы нажали клавишу ENTER (или клавишу RETURN, если используете Mac) после ввода слов "Параметры -Indexes", чтобы файл заканчивался пустой строкой.

Ответ 10

Завершить @GauravKachhadiya ответ:

IndexIgnore *.jpg

означает "скрывать только .jpg файлы расширений от индексирования.

Указатель IndexIgnore использует выражение подстановки для сопоставления с каталогами и файлами.

  • символ звезды, он соответствует любым символам в строке, например: foo или foo.extension, в следующем примере мы собираемся отключить список каталогов, никакие файлы или dirs не появятся в индексе

    IndexIgnore *

Или, если вы хотите скрыть пространственные файлы, в списке каталогов, мы можем использовать

IndexIgnore *.php

*. php = > соответствует строке, которая начинается с любого char и заканчивается на .php

В приведенном выше примере скрываются все файлы, которые заканчиваются на .php

Ответ 11

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

IndexIgnore *

Ответ 12

Попробуйте это в .htaccess:

IndexIgnore *.jpg