Автор Гілка: Відображення списку тек і файлів в Apache  (Прочитано 2675 раз)

Відсутній Sandr

  • Графоман
  • ****
  • дописів: 461
  • Карма: +0/-0
  • Мій вибір — Лінукс!
    • ФОП Осипенко
Хочу зробити так, щоб веб-сервер Apache відображав список тек і файлів, що знаходяться на сервері.

На даний час за відсутності індексного файлу видається лише помилка: "Access forbidden!"

Підкажіть, яким чином увімкнути в налаштуваннях сервера це відображення?
openSUSE + KDE

Відсутній nickat

  • Письменник
  • *****
  • дописів: 587
  • Карма: +0/-0
  • Debian user
Додайте дозвіл на читання (r) та виконання (x) для others для відповідної директорії.
Best regards,
nickat

Відсутній Sandr

  • Графоман
  • ****
  • дописів: 461
  • Карма: +0/-0
  • Мій вибір — Лінукс!
    • ФОП Осипенко
Дозвіл для інших на читання й виконання встановлений для кореневої теки веб-сервера.

sandr@os-nova:/srv$ ls -l | grep www
drwxr-xr-x  8 root  root  4096 2010-07-02 02:15 www

То десь в налаштуваннях самого сервера вимкнено відображення тек і файлів.
openSUSE + KDE

Відсутній nickat

  • Письменник
  • *****
  • дописів: 587
  • Карма: +0/-0
  • Debian user
Спробуйте це
http://www.felipecruz.com/blog_disable-directory-listing-browsing-apache.php
У мене на віртуальному хості запрацювало.
« Змінено: 2010-07-12 18:30:59 від nickat »
Best regards,
nickat

Відсутній Sandr

  • Графоман
  • ****
  • дописів: 461
  • Карма: +0/-0
  • Мій вибір — Лінукс!
    • ФОП Осипенко
Наведу свій файл конфігурації httpd.conf в додатку.

Застосування директив Options All FollowSymLinks MultiViews в цьому файлі не дає позитивного результату.
openSUSE + KDE

Відсутній nickat

  • Письменник
  • *****
  • дописів: 587
  • Карма: +0/-0
  • Debian user
Наведу свій файл конфігурації httpd.conf в додатку.

Застосування директив Options All FollowSymLinks MultiViews в цьому файлі не дає позитивного результату.

треба додати ще Indexes (Options ... Indexes)

Строку "Options ... " треба додавати не в httpd.conf а до конфігурації відповідного VirtualHost.  Що у вас в /etc/apache2/sites-enabled ?

Для чого вам це взагалі потрібно?  Опишіть докладніше, як і для чого у вас налаштовано Apache.
« Змінено: 2010-07-12 20:13:14 від nickat »
Best regards,
nickat

Відсутній Sandr

  • Графоман
  • ****
  • дописів: 461
  • Карма: +0/-0
  • Мій вибір — Лінукс!
    • ФОП Осипенко
Рішення знайшов!

Для відображення тек і файлів треба підкоригувати файл /etc/apache2/default-server.conf.

В ньому потрібно замінити змінну директиви Options з None на All.

Отже, якщо ми хочемо заборонити відображення тек і файлів, то буде файл такого змісту:
Цитата
DocumentRoot "/srv/www"

<Directory "/srv/www">
  Options None
  AllowOverride None
  Order allow,deny
  Allow from all
</Directory>

ServerName os-nova
ServerAdmin os-nova@ukr.net
Include /etc/apache2/conf.d/*.conf

А якщо хочемо дозволити відображення тек і файлів, то такого змісту:
Цитата
DocumentRoot "/srv/www"

<Directory "/srv/www">
  Options All
  AllowOverride None
  Order allow,deny
  Allow from all
</Directory>

ServerName os-nova
ServerAdmin os-nova@ukr.net
Include /etc/apache2/conf.d/*.conf
openSUSE + KDE

Відсутній Sandr

  • Графоман
  • ****
  • дописів: 461
  • Карма: +0/-0
  • Мій вибір — Лінукс!
    • ФОП Осипенко
Також можна відобразити теки і файли зі змінною Indexes:
Цитата
DocumentRoot "/srv/www"

<Directory "/srv/www">
  Options Indexes
  AllowOverride None
  Order allow,deny
  Allow from all
</Directory>

ServerName os-nova
ServerAdmin os-nova@ukr.net
Include /etc/apache2/conf.d/*.conf
« Змінено: 2010-07-12 21:22:58 від Sandr »
openSUSE + KDE