$ _server 세션 파괴?
-
21-08-2019 - |
문제
좋아, 그래서 나는 세션 변수를 사용하지 않고 오히려 내 코드가 다음과 같습니다.
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="Enter your Twitter username and password:"');
header('HTTP/1.0 401 Unauthorized');
echo 'Please enter your Twitter username and password to view your followers.';
exit();
}
$username = $_SERVER['PHP_AUTH_USER'];
$password = $_SERVER['PHP_AUTH_PW'];
따라서 내 질문은 사용자가 (이 경우) Twitter 로그인 자격 증명에서 로그 아웃하려고 할 때이 로그인 세션을 어떻게 파괴 할 수 있습니까?
해결책
당신이 할 수있는 것은 다른 401 헤더를 보내는 것입니다. 브라우저는 일반적으로 이전 값을 "잊어 버리고"다른 사용자/패스 입력 대화 상자를 팝업하고 사용자가 "Abort"버튼을 누르면 "로그 아웃"됩니다. 두 가지 단점 :
- "로그 아웃에 로그인 중단"대화 상자는 사용자가 약간 놀랄 수 있습니다.
- "보통"은 다음과 같이 의존하지 않는 것이 좋습니다.
편집 : 이미 대답을 받았습니다. PHP를 통한 HTTP 인증 로그 아웃
다른 팁
HTTP 인증 로그인 서버 측면을 파괴하는 방법은 없습니다. 이것은이 형태의 로그인의 가장 큰 단점 중 하나입니다.
제휴하지 않습니다 StackOverflow