НTTР-аутентификация

Часто перед тем как разрешить пользователю вводить какие-либо данные, следует осуществить его регистрацию. Большинство серверов (например, Apache) позволяют ограничивать доступ к определенным разделам web-сайта. Путем соответствующей настройки доступ получат только пользователи, пере­численные в конфигурационном файле сервера. При попытке доступа к защи­щенной части сервера будет отображено диалоговое окно, в котором следует ввести имя пользователя и его пароль, как показано на рисунке:

результат выполнения примера

Для того чтобы определить введенное таким образом имя пользователя, в РНР следует обратиться к элементу массива $_SERVER с именем "PHP_AUTH_USER". Ниже приведен пример использования авторизации. Если пользователь введет имя и пароль, его имя будет отображено. Если же регистра­ционное имя не будет задано, доступ будет запрещен, а выполнение скрипта пре­рвано при помощи функции exit.

code: #php
<?
if (!isset($_SERVER['PHP_AUTH_USER'])) {
  header('WWW-Authenticate: Basic realm="workgroup"');
  header('HTTP/1.0 401 Unauthorized');
  echo  'Неавторизованный доступ запрещен';
  exit;
} else {
  echo  "Добро пожаловать, {$_SERVER ['PHP_AUTH_USER']}.";
}
?>
Книга: PHP в примерах. Купить книгу
Автор: Стивен Хольцнер. Переводчик: С. Банников
Поделиться:

Похожие статьи: