Web - кодинг: CGI:
Ограничение доступа при помощи .htaccess
Автор: GrimWig
Источники: и
Как запретить веб-посетителям читать файлы в
директории? Запрет на все файлы: deny from all Где all
обозначает "все".
Разрешить доступ только с определенного
ip: order allow deny deny from all allow from ip_адрес В
данном случае, ip_адрес обозначает конкретный адрес, например:
order allow deny deny from all allow from
192.126.12.199
Запретить доступ для определенного ip order
allow deny deny from all deny from ip_адрес Использование
ip_адрес аналогично для примера выше.
Запрет доступа на
группу файлов по маске: <Files "\.(inc|sql|...другие
расширения...)$"> order allow,deny deny from
all </Files> Определяет доступ к файлу по его
расширению. Например запрет на доступ к файлам с расширениям "inc"
для веб-посетителей: <Files "\.(inc)$"> order
allow,deny deny from all </Files> В данном примере
сам веб-сервер Апач может обращаться к файлам с таким расширениям, в
отличие от посетителей сайта.
Запрет доступа на конкретный
файл: Можно поставить запрет на конкретный файл по его названию
и расширению. <Files config.inc.php> order
allow,deny deny from all </Files> В данном примере
стоит запрет на обращения к файлу config.inc.php посетителями сайта,
сам же сервер может использовать этот файл.
Пароль на
директорию: AuthName "Private zone" AuthType
Basic AuthUserFile /pub/home/твой_логин/.htpasswd require
valid-user Значение AuthName будет выводиться для посетителя и
может использоваться для пояснения запроса авторизации. Значение
AuthUserFile указывает на место, где хранится файл с паролями для
доступа к данной директории. Этот файл создается специальной
утилитой htpasswd.exe. Например в директории, которую защищаем
паролем создаем такой .htaccess: AuthName "For Registered Users
Only" AuthType Basic AuthUserFile
/pub/site.ru/.htpasswd require valid-user В этом примере,
посетитель при запросе директории, будет читать фразу "For
Registered Users Only", файл с паролями для доступа должен лежать в
директории /pub/site.ru/ и называться .htapasswd . Директория
указывается от корня сервера, если вы неправильно зададите
директорию, то Апач не сможет прочитать файл .htpasswd и никто не
получит доступа к данной директории.
Пароль только на 1
файл: Аналогично паролированию директории полностью, можно
ставить пароль только на 1 файл. Пример установки пароля на файл
private.zip: <Files private.zip> AuthName "Users
zone" AuthType Basic AuthUserFile
/home/аккаунт/.htpasswd </Files>
Пароль на группу файлов: Аналогично, используя <Files
"\.(inc|sql|...другие расширения...)$">, можно ставить пароли по
маске файлов. Пример установки пароля на доступ ко всем файла с
расширением "sql": <Files "\.(sql)$"> AuthName "Users
zone" AuthType Basic AuthUserFile
/home/аккаунт/.htpasswd </Files>
Разделение прав доступа Задача: есть каталог GF1 и в нем два
вложенных каталога GF1_1, GF1_2, введено 2 уровня пользователей. 1
группа имеет доступ только к GF1_1 и GF1_2, 2-я ко всем трем
каталогам. Необходимо проводить аутентификацию только 1 раз - при
доступе к GF1_1, но при этом соблюдать права на доступ к GF1_1 и
GF1_2. Логин и пароль запрашиваются только при входе на GF1 - если у
юзвера есть доступ на GF1_1 пароль уже не запрашивается. Если на
GF1_2 доступа нет, вылетит табличка "введите пароль".
www.site.ru/GF1 www.site.ru/GF1/GF1_1 www.site.ru/GF1/GF1_2 GF1
- общий и вместе с тем закрытый. GF1_1 и GF1_2 только для отдельных
личностей. файл .htaccess для каталога GF1: AuthName "Input
password" AuthType Basic AuthUserFile
"/pub/home/login/htdocs/closearea/.htpasswd" <Files
*.*> require valid-user </Files> файл .htaccess
для каталога GF1_1: AuthName "Input password" AuthType
Basic AuthUserFile
"/pub/home/login/htdocs/closearea/.htpasswd" <Files
*.*> require user login1 login2 login3 </Files
*.*> файл .htaccess для каталога GF1_2: AuthName "Input
password" AuthType Basic AuthUserFile
"/pub/home/абв/htdocs/closearea/.htpasswd" <Files
*.*> require user login1 login3 login4 </Files
*.*>
При перепечатке любого материала
с сайта, видимая ссылка на источник www.warayg.narod.ru
и все имена, ссылки авторов обязательны.
© 2005
|