HTTP-Аутентификация

Статус
В этой теме нельзя размещать новые ответы.

Zigfrid

Новичок
HTTP-Аутентификация

PHP 4.4.4, Apache 1.3.37, FreeBSD 6.0
Настроил у себя сабж.
Если сначала заходить на сайт, то всё происходит нормально : появляется окно с вводом логина и пароля, вводится логин и пароль, сравниваются через сабж с заведёнными в базе Mysql и, если всё правильно введено, то пользователь проходит.
Недавно решил добавить logout с сайта. Вот тут начались проблемы....

PHP:
<?
    header('WWW-Authenticate: Basic realm="Protected Area"');
    header('HTTP/1.0 401 Unauthorized');
    echo "Вы должны ввести корректный логин и пароль для получения доступа к ресурсу \n";
    exit;
?>
Это как я пытаюсь выйти и залогиниться снова. Появляется то же окно, но при вводе правильного логина и пароля на сайт не пускает. Но я могу вернуться на предыдущую страницу и продолжить работы под предыдущим пользователем.

Где я на портачил????
Можно ли сделать так, чтобы окно вообще не появлялось, а пользователь просто делал logout с сайта???
 

Zigfrid

Новичок
Автор оригинала: Гравицапа
Zigfrid
А зачем ты вообще используешь HTTP-Аутентификацию?
Чтобы пускать только нужных людей на сайт

-~{}~ 19.01.07 08:43:

Автор оригинала: Фанат
естественно.
ты же посылаешь запрос на авторизацию
но почему на сайт не пускает под теми же логином и паролем???
 

Zigfrid

Новичок
Автор оригинала: Фанат
кто не пускает?
Если сначала заходить на сайт, то всё происходит нормально : появляется окно с вводом логина и пароля, вводится логин и пароль, сравниваются через сабж с заведёнными в базе Mysql и, если всё правильно введено, то пользователь проходит.

Если заходить через програмный код, который я выше описал, то не пускает.
 

Фанат

oncle terrible
Команда форума
это совершенно естественно. программный код, который ты выше описал, именно это и должен делать.

я вот, не понимаю таких вопросов.
"я написал скрипт, который выводит цифру 1. Почему он выводит цифру 1???". =)
что написал - то он и делает.
 

Zigfrid

Новичок
Автор оригинала: Фанат
это совершенно естественно. программный код, который ты выше описал, именно это и должен делать.

я вот, не понимаю таких вопросов.
"я написал скрипт, который выводит цифру 1. Почему он выводит цифру 1???". =)
что написал - то он и делает.
но хочется, чтобы пускал так же, как и при входе на сайт...
хочется, чтобы я на сайт зашёл под одним пользователем, а если надо, то перезашёл бы под другим пользователем, нажав на logout.php
может я код для этого неправильно написал???
 

Фанат

oncle terrible
Команда форума
А ты сам не видишь? Это плохо. Надо понимать, что делает твой код.
Если же ты не понимаешь, то лучше пользоваться более распространёнными решениями и сделать авторизацию на сессиях.
 

Zigfrid

Новичок
Автор оригинала: Фанат
А ты сам не видишь? Это плохо. Надо понимать, что делает твой код.
Если же ты не понимаешь, то лучше пользоваться более распространёнными решениями и сделать авторизацию на сессиях.
меня интересует именно этот вид авторизации
 

Фанат

oncle terrible
Команда форума
Хм. а тебя не затруднит объяснить, чем продиктована такая принципиальная позиция?
 

Zigfrid

Новичок
Автор оригинала: Фанат
Хм. а тебя не затруднит объяснить, чем продиктована такая принципиальная позиция?
Хочется разобраться с этой авторизацией, если я за неё взялся. К тому же на сайте к ней много привязок есть.
 

Фанат

oncle terrible
Команда форума
много привязок. ну да. "лень переделывать", если говорить прямо =)

ну, в принципе, разобраться - желание похвальное.
С другой стороны, простое копирование кода без понимания того, как он работает, не очень вяжется с пониманием.
Ну, да дело хозяйское. Разбирайся =)
 

Zigfrid

Новичок
Автор оригинала: Фанат
много привязок. ну да. "лень переделывать", если говорить прямо =)

ну, в принципе, разобраться - желание похвальное.
С другой стороны, простое копирование кода без понимания того, как он работает, не очень вяжется с пониманием.
Ну, да дело хозяйское. Разбирайся =)
ну критиковать каждый может, а помочь дельным советом - не каждый

может кто-нибудь таки укажет, что в моём коде не так ???
 

Фанат

oncle terrible
Команда форума
ну критиковать каждый может
не возбраняется.
а помочь дельным советом - не каждый
это верно.
людей, которые понимают, как наботает НТТР-авторизация, можно пересчитать по пальцам одной ноги =)
(а те, кто понимают, предпочитают авторизацию сессиями =)
может кто-нибудь таки укажет, что в моём коде не так ???
слушай, ты правда не понимаешь, что делает твой код?
ты даже не понимаешь, что делает команда exit?

Ну хотя бы сравнить с тем кодом, который у тебя работает, ты можешь?
О чём ты думал вообще, когда его писал?

да, и незачем так орать.
 

Zigfrid

Новичок
ты даже не понимаешь, что делает команда exit?
что делает команда exit - я знаю

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

да, и незачем так орать.
а кто тут орёт???
 

Фанат

oncle terrible
Команда форума
что делает команда exit - я знаю
ну тогда почему удивляешься тому, что тебя не пускает на сайт?
с каким кодом сравнивать
с тем, который у тебя работает, когда заходишь на сайт.
а кто тут орёт???
ты.
вот эти твои ??? воспринимаются, как вопли прокажённого.
так что веди себя потише.
 

Zigfrid

Новичок
ну тогда почему удивляешься тому, что тебя не пускает на сайт?
даже если в приведённом мной коде оставить лишь одну строку
PHP:
header('WWW-Authenticate: Basic realm="Protected Area"');
это ничего не меняет. всё-равно не пускает. это я пробовал и раньше.

с тем, который у тебя работает, когда заходишь на сайт.
никакого другого кода для авторизации, кроме приведённого мной, я не писал и на моём сайте нет

ты.
вот эти твои ??? воспринимаются, как вопли прокажённого.
так что веди себя потише.
"???" я всегда использую при общении в инете
 

Фанат

oncle terrible
Команда форума
даже если в приведённом мной коде оставить лишь одну строку
меня мучает любопытство. А зачем? =)
никакого другого кода для авторизации, кроме приведённого мной, я не писал и на моём сайте нет
ты гонишь.
если при входе на сайт написать этот код, то посетитель не сможет на него войти.
Ты вообще хорошо думаешь, перед тем, как что-то написать на форуме?
"???" я всегда использую при общении в инете
в инете можешь использовать сколько угодно, а в приличном обществе надо вести себя потише.
 

SiMM

Новичок
> "???" я всегда использую при общении в инете
Значит при общении в инете ты всегда орёшь.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху