it-swarm.com.de

Wie melde ich alle aktiven Benutzer ab?

Anstatt meine Site in den "Wartungsmodus" zu versetzen, möchte ich sie in einen vollständigen "schreibgeschützten Modus" versetzen. Es gibt ein Modul dafür, es verhindert jedoch nur "Hinzufügen und Bearbeiten von Knoten". Ich möchte verhindern, dass alle Benutzeraktivitäten, einschließlich Anmeldung und Registrierung, die Site grundsätzlich aus dem (Lack-) Cache bedienen. Als Nebeneffekt würde ich diese Art von "Nur-Lese-Modus" verwenden, wenn die Site mit Anfragen überflutet wird.

Meine Frage: Wie kann ich alle aktiven Benutzer abmelden? Das Login und die Registrierungen kann ich dann mit einem Hook umleiten.

15
uwe

Soweit ich weiß, können Sie die Sitzungstabelle leeren und alle Benutzer werden abgemeldet. Abhängig von den von Ihnen installierten Modulen kann jedoch ein Problem auftreten. Beispielsweise werden Module, die hook_user_logout() implementieren, niemals ihre Aktionen ausgelöst, was ein Problem sein könnte. Stellen Sie sicher, dass keines Ihrer installierten Module diesen Hook implementiert.

13
F1234k

Sie können die Sitzungstabelle mit drush leeren

drush sqlq "TRUNCATE sessions"

oder wenn Sie Präfixe für Tabellennamen festgelegt haben:

drush sqlq --db-prefix "TRUNCATE {sessions}"
13
batigolix

Sie können das Abmelden aller Benutzer über einen Update-Hook erzwingen:

/**
 * Force to logout all the users.
 */
function mymodule_update_7001() {
  db_truncate('sessions')->execute();
}
0
milkovsky

Verwenden Sie Force Logout Module ..

Eigenschaften

  • Einstellungsformular, in dem Sie aktivieren und deaktivieren können (Abmelden erzwingen).
  • Berechtigung, damit Sie einige Benutzerrollen ausschließen können, wenn Sie beispielsweise den Administrator ausschließen möchten.
0
Saud Alfadhli