2016-07-10 15 views
3

Ich benutze einen LAMP-Server und wenn Benutzer auf die Server-Homepage zugreifen, verwende ich die Apache-Standardauthentifizierung, um sie einzuloggen. Gibt es eine Möglichkeit, den Benutzer zum Logout zu zwingen (oder ausgeloggt zu werden)? Ich habe die mod_session & mod_auth_form vergeblich versucht. Die Seite, die ich benutze, ist eine Mischung aus PHP/HTML. Ich werde bei all meinen Programmierfähigkeiten selbst unterrichtet, so dass mir die Tiefe fehlt, um eine praktikable Lösung zu finden. Vielen Dank.Apache erzwungene Abmeldung?

Antwort

1

Die kurze Antwort ist können Sie nicht.

Schauen Sie sich diese Quellen:

keine richtige Art und Weise existiert, nicht einmal eine, die in allen Browsern konsistent ist.

https://stackoverflow.com/a/449914/3960852


Folglich ist die Antwort auf diese Frage ist, Sie können nicht. Es tut uns leid.

https://stackoverflow.com/a/1163876/3960852


Allerdings gibt es bestimmte Möglichkeiten für bestimmte Browser. Wenn Sie planen, nur einen bestimmten Browser zu unterstützen, was eine gültige Vorgehensweise ist, gibt es hackhafte Möglichkeiten, dies zu erreichen.

https://stackoverflow.com/a/36176917/3960852


Allerdings ist die Jury aus. Wenn Sie HTTP-authentifizierte Benutzer mit umfangreicher Browser-Unterstützung abmelden möchten, haben Sie Pech gehabt.

1

Nachdem ich mir diese Vorschläge angesehen hatte, arbeitete ich eine Lösung aus, wenn auch keine saubere und elegante Lösung. Ich folgte der Idee des geschützten Ordners mit einer htaccess-Datei. Wenn der Benutzer auf meinen Abmeldelink klickt, wird eine JavaScript-Warnung angezeigt, um auf "Abbrechen" zu klicken, wenn Sie zur Eingabe des Benutzernamens und des Kennworts aufgefordert werden. In meiner htaccess-Datei habe ich einen Override für ein benutzerdefiniertes 401-Fehler-Dokument eingefügt, das ich dann als Logout-Seite gemacht habe. Der Benutzer klickt auf "Abbrechen" und wird auf die Seite umgeleitet, um ihm mitzuteilen, dass die Abmeldung erfolgreich war. Ich habe einen Link auf dieser Seite hinzugefügt, um mich erneut anzumelden. Bei Firefox hat der Benutzer bisher immer Anmeldeinformationen eingeben müssen, um sich wieder einzuloggen. Schmutzig, aber es funktioniert.

Verwandte Themen