СообЧа > База Знаний > Интернет > Веб-строительство > PHP

Вопрос

Необходимо поставить авторизацию на определенную страницу. Прочитал, что необходимо послать заголовок типа:

<?
if(!isset($PHP_AUTH_USER)){
Header( "WWW-Authenticate: Basic realm="имя зоны");
Header( "HTTP/1.0 401 Unauthorized");
echo "<H1>Authorization Required</H1>\n";
exit;}
else{
Header( "WWW-Authenticate: Basic realm="имя зоны");
Header( "HTTP/1.0 401 Auth Required");
echo "<H1>Authorization Required</H1>\n";
exit;} ?>
<html>
</html>


Вопрос: что такое «имя зоны» и где указан пароль, необходимый для введения, как его изменить?

Ответ

Realm — есть область аутентификации для директории, этот параметр виден пользователю в окне запроса браузера. С помощью него юзер и определяет, куда это он попал и какие ему следует ввести реквизиты.

Пароли для этого могут храниться в зависимости от типа аутентификации в разных местах (TXT, BDB, MDB,md5).

<Directory /home/*/public_html/private>
AuthType Basic
AuthName MyPrivateFile
AuthUserFile /usr/local/apache/etc/.htpasswd-allusers
Satisfy All
Require file-owner
</Directory>


Здесь, где лежит файл, указывает директива AuthUserFile. Создаются юзер\пароль с помощью специальных утилит (htaccess, dbmanage) т.к. хранятся в зашифрованном виде.
http://httpd.apache.org/docs/mod/

кОстя С. иванОв



Copyright © 2000-2004 Сообщество Чайников
Контактная информация