• • •
Apache - httpd.conf - Log
 
• • •
Options - Order - Auth
 
• • •
ErrorDocument
 
• • •
AddType - MIME types
 
• • •
CharsetDefault - CharsetSourceEnc
 
• • •
Redirect - RedirectMatch
 
• • •
Mod_rewrite - RewriteCond
 
• • •
AddHandler - Pass(Set)Env
 
• • •
PHP - .htaccess
 
• • •
Дополнительный материал
 
Рекламная информация:
 
Реклама


 
Auth - защита паролем

Auth - защита паролем

Еще можно использовать .htaccess для установки пароля на доступ к определенным страницам или разделам Вашего сайта (пароль htaccess).

Делается это путем создания в нужном подкаталоге файла .htaccess, в который пишем следующее (реальный пример):

# в кавычках пишем произвольное сообщение на английском,

#которое будет появляться в окошке авторизации

AuthName "The Catalogue on reconstructions, entry for debugging only. We Bring their own apologies an administration"

AuthType Basic

AuthUserFile /home/www/users/AM/pas/.htpasswd

require valid-user

Файл с паролями может быть создан утилитой htpasswd

Директива AuthName

Описание: значение AuthName будет выводиться для посетителя и может использоваться для пояснения запроса авторизации - название области ограниченного доступа (htaccess доступ)

Синтаксис: AuthName "The Catalogue on reconstructions, entry for debugging only. We Bring their own apologies an administration"

#все пишется в одну строку

Директива AuthType

Описание: Эта директива выбирает тип аутентификации. Возможны следующие типы: Basic and Digest . Второй может не поддерживаться некоторыми браузерами, поэтому пользоваться им не рекомендуется.

Синтаксис: AuthType Basic | Digest

Директива AuthUserFile

Описание: значение AuthUserFile указывает имя файла с паролями для аутентификации пользователей.


Файл с паролями может быть создан утилитой htpasswd >>> скачать htpasswd для Windows - 202Кб.

Windows XP - определяет утилиту как опасную программу и выдает предупреждение, в windows 7 вопросов нет, как и в любой антивирусной программе. Так что запускайте смело. Сама утилита без-установочна и работает из любой папки.

Путь к файлу с паролями задается относительно корня веб-сервера. Храните файл с паролями в папке, доступ к которой закрыт для пользователей - (желательно поместить этот файл вне иерархии вашего веб-сайта, но часто это не позволяют сделать настройки сервера хостинга).

Директива AuthName

Синтаксис: AuthUserFile путь-к-файлу

Если вы не знаете путь от корня сервера то его можно посмотреть - кинув тестовый php-скрипт info.php на сервере со следующим кодом:

<?php
phpinfo () ;
?>

В переменной окружения DOCUMENT_ROOT Вы увидите ваш путь, приблизительно такого вида: DOCUMENT_ROOT => /home/www/users/AM/public_html

Директива Require

Описание: Определяет пользователей, которые могут получить доступ

Синтаксис: Require имя-пользователя| valid-user

Указывая valid - user вы разрешаете доступ всем пользователям, перечисленным в файле паролей.

Пример: разрешает доступ директории всем пользователям встречающимсмя в файле паролей .htpasswd. В зависимости от настроек хостинга может потребоваться секция директив Limit GET POST смотри в примерах ниже.

AuthName "Restricted area"

AuthType Basic

AuthUserFile /home/www/users/AM/pas/.htpasswd

Require valid-user

Пример: разрешает доступ к директории только 3-м пользователям:

AuthName "The Catalogue on reconstructions, entry for debugging only."

AuthType Basic

AuthUserFile /home/www/users/AM/pas/.htpasswd

Require Alexey Serpul Root

# в зависимости от версии иногда нужно добавить "*user*"

# Require *user* Alexey Serpul Root


ВАЖНОЕ ПРИМЕЧАНИЕ!!!

Стоит отметить, что разместить файл с паролями .htpassw в корне всех доменов в данном примере в директории "www", на некоторых хостингах не удалось - он был не доступен, на других такой вариант срабатывал. Вариант с одним .htpassw для нескольких каталогов - нескольких htaccess вполне работоспособен. Т.е. с одним файлом паролей лежащим в одном домене, могут работать все остальные домены вашего хостинга - сервера. Т.е один логин - пароль на все закрываемые Вами директории.

Что касается прав доступа то форма авторизации работает практически на всех вариантах, как на наиболее встречающихся дефолтных - 755, так и например на 544 т.е. владелец-5-(чтение-выполнить), группа-4-(чтение), публичные-4-(чтение).

Рабочий пример: разрешает доступ к директории только 1-м пользователю (из практики скажим что для некоторых хостингов секция команд пропущенная в приведущих примерах "Limit GET POST" обязательна, поэтому эксперемнтируем):

AuthName "The Catalogue on reconstructions, entry for debugging only!"

AuthType Basic

AuthUserFile /home/www/htaccess.net.ru/secret/.htpasswd

<Limit GET POST>

require valid-user

<Limit>

Содержимое .htpasswd - сгенерированого и сохраненного утилитой passwd.exe - Encode UNIX Password. Копируем его соотвественно в - htaccess.net.ru/secret

Root:RoU9yc57nPeKM

В итоге при попытки открыть - войти в каталог в котором лежит данный .htaccess появляется окошко авторизации для ввода "Имя пользователя" - "Root" и "Пароля"- "12345".

Если введены неверные данные то сервер выдаст 401 код:
401 Unauthorized
Неавторизованный запрос. Этот код результата, передаваемый с заголовком WWW-Authenticate, показывает, что пославший запрос пользователь не имеет необходимых полномочий и что при повторении запроса с указанием данного URI пользователь должен такие полномочия предоставить.


Пример: ограничение доступа к определенным файлам (в этом примере ограничен доступ к zip архивам - htaccess запрет)

<FilesMatch "\.zip$">

AuthName "Only valid users can download zip files."

AuthType Basic

AuthUserFile /home/www/users/AM/pas/.htpasswd

Require valid-user

</ FilesMatch >

Пример: ограничение доступа к одному файлу (в этом примере ограничен доступ к конкретному файлу . htpasswd, но обычно о защите данного файла должен позаботиться хостер, в глобальной конфигурации сервера - при попытке открыть .htpasswd - сервер должен выдать 403 ошибку.

<Files ".htpasswd">

AuthName "Access restricted."

AuthType Basic

AuthUserFile /home/www/users/AM/pas/.htpasswd

Require Alexey Serpul

</ Files >

Следует помнить, что при таком ограничении доступа пароли передаются по каналам связи в открытом виде и при определенных обстоятельствах могут быть перехвачены злоумышленниками. Поэтому в целях безопасности рекомендуется организовывать доступ к закрытым областям веб-сайта через защищенное SSL -соединение.

Объем информации: 9117 bytes
Россия • admin@htaccess.net.ru 2005 - 2012 • Recommended Web Hosting


 
  In Partnership with AOL Search    службы мониторинга серверов
  Рекламный материал:
  Услуги опытного юриста: сделать ип под ключ.

  
Рекламный материал: