Sitzungsinformationen
Als Administrator/in können Sie auf der Seite Einstellungen > Website-Administration > Server > Sitzungsinformationen verschiedene Einstellungen vornehmen.
Sobald sich ein/e Nutzer/in auf Ihrem Moodle-Server anmeldet, startet der Server eine Sitzung (Session). Die Sitzungsinformationen ermöglichen es dem Server, die Nutzeraktivitäten zu verfolgen, wenn diese/r Nutzer/in auf verschiedene Moodle-Seiten zugreift.
Sitzungsinformationen in Datenbank speichern
Moodle muss die Sitzungsinformationen irgendwo speichern. Standardmäßog werden die Sitzungsinformationen im Dateispeicher oder in der Datenbank gespeichert.
Wenn Sie die Checkbox Sitzungsinformationen in Datenbank speichern markieren, dann werden Informationen zu den aktuellen Sitzungen der angemeldeten Nutzer/innen in der Moodle-Datenbank gespeichert.
Große Moodle-Installationen oder Moodle-Sites, die über mehrere Cluster von Servern verteilt arbeiten, sollten zum Speichern der Sitzungsinformationen einen Memcached Session Treiber verwenden (siehe unten).
Hinweis: Diese Einstellung wird nicht angezeigt, sobald Sie in der Moodle-Konfigurationsdatei config.php den Parameter $CFG->session_handler_class
setzen.
Zeitüberschreitung
Wenn Nutzer/innen während der hier angegebene Zeitdauer keine neue Seite in Moodle aufrufen, beendet Moodle die Sitzung automatisch und meldet die Nutzer/innen ab.
Stellen Sie sicher, dass die Zeit ausreichend groß ist, es ist z.B. schlecht, wenn Kursteilnehmer/innen einen Test bearbeiten und plötzlich abgemeldet werden, wenn sie zu lange über eine Frage nachdenken, denn dann könnten bereits gegebene Antworten verloren gehen.
Cookie-Präfix
In der Regel können Sie dieses Feld leer lassen. Wenn Sie jedoch mehrere Moodle-Installationen auf einem Server betreiben, dann tragen Sie hier für jede Installation ein eigenes Cookie-Präfix ein. Auf diese Weise können Sie sich auf allen Moodle-Installationen gleichzeitig anmelden.
Hinweis: Wenn Sie bei dieser Einstellung Änderungen vornehmen, dann werden Sie automatisch abgemeldet und müssen sich neu anmelden.
Cookie-Pfad
Manchmal sendet Moodle Cookies zurück. Diese müssen in irgendeinem Verzeichnis Ihres Moodle-Servers gespeichert werden. Tragen Sie hier den Pfad zu diesem Verzeichnis ein.
Hinweis: Wenn Sie bei dieser Einstellung Änderungen vornehmen, dann werden Sie automatisch abgemeldet und müssen sich neu anmelden.
Cookie-Domain
Diese Einstellung erlaubt es Ihnen, die Domain zu verändern, von der Moodle-Cookies benutzbar sind. Dies ist nützlich für Moodle-Anpassungen (z.B. Plugins zur Authentifizierung oder Einschreibung), die Informationen bezüglich der Moodle-Sitzung mit Programmen auf einer anderen Subdomain teilen müssen.
Hinweis: Es wird dringend empfohlen, diese Einstellung leer zu lassen bzw. nicht zu verändern - ein falscher Wert könnte dazu führen, dass sich Nutzer/innen nicht mehr auf Ihrer Moodle-Site anmelden können!
Session Treiber
Sitzunginformationen von Nutzer/innen können in verschiedenen Backends gespeichert werden. Session Treiner können nur in der Moodle-Konfigurationsdatei config.php konfiguriert werden. Ein Beispiel finden Sie in der Musterdatei config-dist.php.
Memcached Session Treiber
Der Memcached Session Treiber ist der schnellste Treiber. Er erfordert einen externen Memcached Server und die PHP-Extension memcached.Die Server Cluster Nodes müssen einen shared Session Storage verwenden.
In der Moodle-Konfigurationsdatei config.php können Sie den Treiber wie folgt konfigurieren:
$CFG->session_handler_class = '\core\session\memcached';
$CFG->session_memcached_save_path = '127.0.0.1:11211';
$CFG->session_memcached_prefix = 'memc.sess.key.';
$CFG->session_memcached_acquire_lock_timeout = 120;
$CFG->session_memcached_lock_expire = 7200; // Ignored if memcached extension <= 2.1.0
Anmerkungen:
- Stellen Sie sicher, dass der Memcached Server genügend Speicher hat.
- Verwenden Sie verschiedene Präfixe, wenn Sie Sitzungsinformationen von verschiedenen Moodle-Sites auf einem Server speichern.
- Wenn die installierte PECL memcached Extension älter als 2.2.0 ist, funktioniert das Locking anders als bei anderen Treibern: Das Locking wird gelöscht, wenn die Zeitüberschreitung erreicht ist - siehe MDL-42485.
- Verwenden Sie nicht denselben Memcached Server zum Speichern der Sitzungsinformationen und des MUC. Events, die dafür sorgen, dass der MUC Cache gelöscht wird, führen dazu, dass MUC den Memcached Server löscht und damit alle Sitzungen beendet.
- Die Einstellung
$CFG->session_memcached_number_of_replicas
wird nicht mehr unterstützt.
Hinweis für Windows-Nutzer/innen: PHP.net stellt nur Binaries für memcache zur Verfügung (und nicht für memcached)., siehe http://windows.php.net/downloads/pecl/releases/.
Datei Session Treiber
Dieser Treiber wird standardmäßig bei Neuinstallationen von Moodle verwendet.
In der Moodle-Konfigurationsdatei config.php können Sie den Treiber wie folgt konfigurieren:
$CFG->session_handler_class = '\core\session\file';
$CFG->session_file_save_path = $CFG->dataroot.'/sessions';
Anmerkungen:
- Datei Session Treiber erfordern, dass das Dateisystem das Locking von Dateien unterstützt.
Datenbank Session Treiber
Dieser Treiber wurde standardmäßig in Moodle 2.0-2.5 verwendet.
In der Moodle-Konfigurationsdatei config.php können Sie den Treiber wie folgt konfigurieren:
$CFG->session_handler_class = '\core\session\database';
$CFG->session_database_acquire_lock_timeout = 120;
Anmerkungen:
- DB Sessions sind nicht kompatibel mit der MyISAM Datenbank-Engine.
- Wenn Sie MySQL/MariaDB verwenden, stellen Sie sicher, dass in der Konfigurationsdatei my.cnf (oder my.ini) der Parameter
max_allowed_packet
auf mindestens 4M gesetzt ist. - Die Geschwindigkeit ist relativ niedrig, so dass diese Variante für große Moodle-Installationen nicht empfohlen wird.
Redis Session Treiber
Der Redis Session Treiber ist ab Moodle 3.1.3 verfügbar (siehe MDL-54606). Er erfordert, dass der Redis Server und die Redis Extension installiert sind.
In der Moodle-Konfigurationsdatei config.php können Sie den Treiber wie folgt konfigurieren:
$CFG->session_handler_class = '\core\session\redis';
$CFG->session_redis_host = '127.0.0.1';
$CFG->session_redis_port = 6379; // Optional.
$CFG->session_redis_database = 0; // Optional, default is db 0.
$CFG->session_redis_prefix = ; // Optional, default is don't set one.
$CFG->session_redis_acquire_lock_timeout = 120;
$CFG->session_redis_lock_expire = 7200;