Пароль - защищает каталог, но не что файлы каталога?

Я просто задавался вопросом, было ли возможно защитить каталог с комбинацией имени пользователя/пароля с помощью .htaccess и .htpasswd файлами, но не защитить файлы в. т.е. Каждый может связать, скажем, изображения в рамках того каталога друзьям, но просмотр самого каталога не был бы позволен без имени пользователя/пароля. Благодаря всем заранее.

8
задан 07.07.2010, 09:35

7 ответов

Да, можно защитить файлы и каталоги по имени или шаблон. Вы уже должны при помощи этого для ограничения доступа к .ht* файлы. Проверьте свою апачскую конфигурацию. Необходимый шаблон файла, вероятно, будет '/$ '.

0
ответ дан 07.12.2019, 14:17

Использовать LocationMatch ограничить подлинный материал индексом каталога.

0
ответ дан 07.12.2019, 14:17

Если Вы хотите, чтобы список каталогов был видим к только authroized пользователи, но позволить любому загружать файл (таким образом, можно отправить людей ссылки), то Вам нужен сценарий некоторого типа (PHP, ASP, и т.д.), который просит у пользователя пароль и если они получают его правильные дисплеи содержание каталога. Вы поместили бы этот сценарий в каталог и назвали бы его как index.php, таким образом, это становится подаваемым, а не апач, генерирующий индекс каталога.

-1
ответ дан 07.12.2019, 14:17

Да. Добавьте файл index.html, который перечисляет содержание папки, и ограничьте доступ к тому файлу с .htaccess. Если Вы захотите, чтобы индекс был динамичным, то необходимо будет использовать своего рода сценарий (или сторона сервера включают) генерировать индекс.

-1
ответ дан 07.12.2019, 14:17

Сделайте chmod 777 на файлах, но не на основной папке.

-2
ответ дан 07.12.2019, 14:17

Вы хотите просто выключить отображающийся Apache индекс папки. Поместите это в .htaccess:

Options -Indexes

Таким образом, когда Пользователи посещают http://www.url.com/folder/, они получают Каталог, перечисляющий отклоненный в ошибке. Но когда они посещают http://www.url.com/folder/file.jpg они видят файл.

0
ответ дан 07.12.2019, 14:17

Попробуйте это в Вашем .htaccess:

Require valid-user

<Files ?*>
    Order allow,deny
    Allow from all
    Satisfy any
</Files>

Здесь Require valid-user требует любого известного входа в систему. Затем Вы исправляете это ограничение для файлов по крайней мере с одним символом на их имя – это что шаблон шарика ?* для <Files> раздел будет соответствовать – который эффективно означает, что прилагаемые правила относятся к файлам, но не к каталогам.

В исправленных правилах для файлов ключ Satisfy any. Это позволяет авторизацию удовлетворенному или учетными данными или IP-адресом. Затем Вы позволяете любому IP-адресу передавать, таким образом, запросы всегда авторизовываются.

Таким образом, теперь просмотр этого каталога или любого из его подкаталогов потребует входа в систему, но непосредственно получение файла от него не будет.

Который является тем, что Вы хотели.

9
ответ дан 07.12.2019, 14:17

Теги

Похожие вопросы