销毁$ _SERVER会话?
问题描述:
好了,所以我不使用任何会话变量,而我的代码看起来是这样的:
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头。浏览器通常会“忘记”旧值,弹出另一个用户/通过输入对话框,如果用户按下“中止”按钮,它们将被“注销”。 两个缺点:
- 的“中止登录注销”对话框可能会让用户有点
- “通常”是指:最好不要依赖于它。
编辑:而且已经有了答案,HTTP authentication logout via PHP
+0
这再加上其他可能的方法在php手册的评论中被提及。然而就像你说的,他们不能保证工作。 链接:http://us3.php.net/manual/en/features.http-auth.php#76511 – MitMaro 2009-07-01 00:20:02
答
有没有办法破坏HTTP身份验证登录服务器端。这是这种登录形式的最大缺点之一。
同样的问题,同样的答案在http://*.com/questions/449788/http-authentication-logout-via-php – VolkerK 2009-07-01 00:28:30