Pregunta

Bueno por lo que no estoy usando ningún variables de sesión, en lugar de mi código es el siguiente:

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']; 

Por lo tanto, mi pregunta es, ¿cómo puedo destruir esta sesión de inicio de sesión cuando el usuario desea cerrar la sesión de su (en este caso) las credenciales de inicio de sesión de Twitter?

¿Fue útil?

Solución

Todo lo que puedes hacer es enviar otra cabecera 401. El navegador se suele "olvidar" el valor antiguo, aparecerá otro usuario / contraseña de diálogo de entrada y si los usuarios a continuación, pulse el botón de "abortar" que son "desconectado". Dos inconvenientes:

  • El "abortar la sesión para cerrar la sesión" diálogo puede sorprender a los usuarios un poco
  • "normalmente" significa: mejor no dependen de él
  • .

Edit: Y ya ha sido contestada, HTTP cierre de sesión de autenticación a través de PHP

Otros consejos

No hay manera de destruir a un lado del servidor de inicio de sesión de autenticación HTTP. Este es uno de los mayores inconvenientes de esta forma de inicio de sesión.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top