2012-03-01 2 views
2

Я использую Htdigest аутентификацию с помощью lighttpd. Когда пользователь впервые регистрируется на веб-сайте, отображается стандартное диалоговое окно с именем пользователя/паролем. Если введено правильное имя пользователя и пароль, пользователь может войти в систему, иначе lighttpd отобразит страницу с ошибкой аутентификации.Как сообщить браузеру забыть о htdigest?

Пока все хорошо!

Проблема заключается в том, когда пользователь хочет выйти из системы, браузер не забывает имя пользователя и пароль. Другими словами, пока браузер открыт, пользователь может вернуться на тот же сайт, не запрашивая аутентификацию. Одним из решений может быть закрыть браузер, чтобы он забыл об аутентификации. Но я не хочу заставить пользователя закрывать браузер каждый раз, когда они хотят выйти из системы.

Есть ли способ использовать код JavaScript или серверный код (то есть PHP, Python или Lua), чтобы браузер забыл о htdigest аутентификации?

PS. Мы используем Lua 5.1 на стороне сервера, которая не такая мощная, как PHP, но работает как FASTCGI в Lighttpd 1.4 на Linux 2.6.

ответ

1

Это можно сделать, но сложно. Для этого нет способа по умолчанию. Заключено нарисовано fromvarioussources

Вы должны обмануть браузер, забыв комманду пользователя/пароля. Это может быть достигнуто путём отправки страницы выхода из отчета 401 Not Authorized response. К сожалению, информация зависит от браузера.