Авторизация к папке кроме одного файла?

Статус
В этой теме нельзя размещать новые ответы.

mrdigy

Местный житель
Регистрация
29 Дек 2007
Сообщения
183
Реакции
23
Вот пример как запретить доступ к папке кроме авторизированных пользователей.

AuthType Basic
AuthName "Private zone. Only for administrator!"
AuthUserFile /usr/host/mysite/folder.htpasswd
require valid-user
require root

А как сделать что б в этой папке был доступ к одному файлу всем без авторизации?
Спаибо за ответы.
 
Код:
AuthName "Administration Area"
AuthType Basic
AuthUserFile "FILE_PATH/.htpasswd"
Require valid-user
SetEnvIf Request_URI "(test\.html)" allow_all
Order allow,deny
Allow from env=allow_all
Satisfy any
 
Было б не полохо объяснение по каждой строчке.
Спасибо
 
Код:
AuthName "Administration Area"
AuthType Basic
AuthUserFile "FILE_PATH/.htpasswd"
Require valid-user
первые четыре не объясняю

Код:
SetEnvIf Request_URI "(test\.html)" allow_all
SetEnvIf позволяет устанавливать переменные окружения, руководствуясь некоторыми условиями. мы тестируем запрашиваемый URI на предмет его совпадения с именем файла test.html
если это так, то сервер установит переменную allow_all.
по умолчанию сервер присвоит ей 1.

Код:
Order allow,deny
Order определяет последовательность проверки директив allow и deny, а также действия по умолчанию. сначала проверяются директивы allow, если совпадение найдено, то доступ предоставляется, иначе проверяются директивы deny и если совпадение найдено, то доступ запрещается, иначе доступ предоставляется

Код:
Allow from env=allow_all
Allow директива затрагивает, какие хозяева могут получить доступ к области сервера. доступом можно управлять hostname, IP (и диапазоном IP), или в соответствии с другими особенностями запроса клиента, захваченного в переменных окружающей среды (как раз в нашем случае)

Код:
Satisfy any
определяет стратегию доступа, если используются и allow и require. параметр может быть или 'all' или 'any'. С "any" опцией клиенту будет предоставлен доступ, если установлена переменная (наш случай) или он передаст адрес хоста, или айпи
 
Код:
AuthName "Administration Area"
AuthType Basic
AuthUserFile "FILE_PATH/.htpasswd"
Require valid-user
SetEnvIf Request_URI "(test\.html)" allow_all
Order allow,deny
Allow from env=allow_all
Satisfy any

Да работает, но получается что он одновременно и запрашивает логин/пароль и запускает разрешённый файл.
Можно ли зделать что б он не спрашивал логин/пароль а запускал разрешённый файл только.
Спасибо.
 
Код:
AuthName "Administration Area"
AuthType Basic
AuthUserFile "FILE_PATH/.htpasswd"

SetEnvIf Request_URI "(test\.html)" allow_all
Order allow,deny
Allow from env=allow_all
Satisfy any

Require valid-user

попробуй так
 
Спасибо за ответы.
Но всё равно спрашивает логин/пароль + запускает разрешённый файл.
 
странно... у тебя стандартная настройка апача?
может где-то глубже настройки трогались... в httpd.conf например...

проверил на 3х серверах тока что
везде работает без проблем
 
странно... у тебя стандартная настройка апача?
может где-то глубже настройки трогались... в httpd.conf например...

проверил на 3х серверах тока что
везде работает без проблем

Да возможно, а как сделать такой вариант без авторизации, с использованием deny from all, только доступ к одному файлу всем, и полный доступ к root.
Напишите примерчик. Спасибо.
 
у меня такой же вопрос, вот например када гружу страницу с кодом в начале
PHP:
include('admin/config.php');
 include_once('admin/forms/class_form.php');

то при загрузке этой страницы просит логин и пароль но одновременно пускает, хотя я ни одного файла не разрешал, папка admin все под запретом
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху