Кинотавр
Новичок
Как перехватывать действие после неудачной HTTP-авторизации?
В мемберс-ареа используется HTTP-авторизация согласно приведенному ниже коду.
Программа пишет лог с записью таймстампа, IP-адреса, хоста и др. После успешной авторизации он записывается нормально. Но надо чтобы еще писались и неудачные попытки авторизации, для последующего анализа. Но, судя по моим опытам, HTTP-авторизация при неудачной попытке выводит лишь пустое белое содержимое броузера. Под неудачной попыткой подразумевается введенный трижды неправильный логин/пароль или нажатие "Отмена". В обоих случаях выводится пустота.
Вопрос: как перехватывать неудачную попытку авторизации (тройной неправильный ввод или Отмена), чтобы можно было записать лог с информацией о неудачной авторизации?
Спасибо.
В мемберс-ареа используется HTTP-авторизация согласно приведенному ниже коду.
PHP:
if (!isset($_SERVER['PHP_AUTH_USER']))
{
Header ("WWW-authenticate: Basic realm=\"Members Area\"");
Header ("HTTP/1.0 401 Unauthorized");
exit;
}
else
{
$pwdfile = "../users/".$_SERVER['PHP_AUTH_USER']."/htpasswd";
if (file_exists($pwdfile))
{
$fd = fopen($pwdfile,"r");
$password = trim(fread($fd,filesize($pwdfile)));
fclose($fd);
}
if (md5($_SERVER['PHP_AUTH_PW'])!=$password)
{
Header ("WWW-authenticate: Basic realm=\"Members Area\"");
Header ("HTTP/1.0 401 Unauthorized");
exit;
}
$user_nick = $_SERVER['PHP_AUTH_USER'];
// Далее несколько строк записи лога авторизации юзера
}
Вопрос: как перехватывать неудачную попытку авторизации (тройной неправильный ввод или Отмена), чтобы можно было записать лог с информацией о неудачной авторизации?
Спасибо.