Я хочу відключити перегляд каталогів папки / galerias та всіх підкаталогів
Покажчик / галерії / 409
* Parent Directory * i1269372986681.jpg * i1269372986682.jpg * i1269372988680.jpg
Я хочу відключити перегляд каталогів папки / galerias та всіх підкаталогів
Покажчик / галерії / 409
* Parent Directory * i1269372986681.jpg * i1269372986682.jpg * i1269372988680.jpg
Відповіді:
Створіть .htaccess файл, що містить такий рядок:
Options -Indexes
Це один варіант. Інший варіант - редагування вашого файла конфігурації apache.
Для цього спочатку потрібно відкрити його командою:
vim /etc/httpd/conf/httpd.conf
Потім знайдіть рядок: Параметри індексів FollowSymLinks
Змініть цей рядок на: Параметри FollowSymLinks
Нарешті, збережіть та закрийте файл та перезапустіть сервер apache за допомогою цієї команди:
sudo service httpd restart
( У вас є керівництво з скріншот тут .)
.htaccess
може бути вимкнено. Будь ласка, перевірте AllowOverride
Директиву. Якщо встановлено значення None
, він .htaccess
вимикається. Ви можете увімкнути його, встановивши AllowOverride All
. Якщо бути точнішим, All
означає всі директиви Apache.
Найкращий спосіб зробити це - відключити його за допомогою веб-сервера 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 reload
Це дозволить відключити перелік каталогів у всій папці, яку обслуговує apache2.
-Indexes
FollowSymLinks
apachectl configtest
після додавання Options -Indexes FollowSymLinks
до httpd.conf виписує таку помилку: "Або всі параметри повинні починатися з + або -, або жодна опція не може." Тому те, що буде працюватиOptions -Indexes +FollowSymLinks
Крім затверджених двох методів (редагувати /etc/apache2/apache2.conf або додати Options -Indexes у .htaccess файл), ось ще один
a2dismod autoindex
Після цього перезапустіть сервер apache2
sudo service apache2 restart
a2dismod -f autoindex
для незаблокування виконання команд.
Alias
папок та будь-якого іншого шляху, який обслуговує Apache.
Редагуйте / Створіть .htaccess
файл усередині /galerias
цього:
Options -Indexes
Перегляд каталогів забезпечується модулем mod_autoindex .
.htaccess
файлі (що не є найефективнішим способом, але часто це єдиний варіант у спільних хостинг-акаунтах або із зайнятими sysadmins).
Ви можете розмістити порожній файл, викликаний index.html
у кожен каталог, який ви не хочете перераховувати. Це має ряд переваг:
.htaccess
файли, це може призвести до безлічі повідомлень "Помилка 500 - внутрішня помилка сервера" для ваших користувачів!).Теоретично автоіндексування може бути спровоковано іншим файлом (цим керує DirectoryIndex
опція), але мені ще в цьому не вдається зіткнутися в реальному світі.
index.html
первинно визначеною Директивою DirectoryIndex .
Одним із важливих моментів у налаштуванні безпечного веб-сервера apache є відключення перегляду каталогів. За замовчуванням apache оснащений цією функцією, але це завжди гарна ідея відключити її, якщо вам вона справді не потрібна. Відкрийте файл httpd.conf у папці apache і знайдіть рядок, який виглядає наступним чином:
Options Includes Indexes FollowSymLinks MultiViews
потім видаліть слова «Індекси» та збережіть файл. Перезапустіть апаш. Це воно
Це не відповідь, а лише мій досвід:
На моєму Ubuntu 12.04 apache2, не знайденого Indexes
ні в апахе2.conf, ні в httpd.conf, на щастя, я знайшов його sites-available/default
. Після видалення його тепер не відображається перелік каталогів. Можливо, доведеться це зробити sites-available/default-ssl
.
Щоб завершити відповідь @ GauravKachhadiya:
IndexIgnore *.jpg
означає "приховати лише файли розширень .jpg від індексації.
Директива IndexIgnore використовує виразні символи для порівняння з каталогами та файлами.
зірковий символ, він відповідає будь-яким символам у рядку, наприклад: foo або foo.extension, у наступному прикладі ми вимкнемо список каталогів, в індексі не з’являться файли чи dirs:
IndexIgnore *
Або якщо ви хочете приховати просторові файли в списку каталогів, ми можемо використовувати
IndexIgnore *.php
* .php => відповідає рядку, який починається з будь-якого символу та закінчується .php
Приклад вище приховує всі файли, які закінчуються .php
Спробуйте це .htaccess
:
IndexIgnore *.jpg