Я хочу відключити перегляд каталогів папки / 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