Sitzungsinformationen: Unterschied zwischen den Versionen

Wechseln zu: Navigation, Suche
 
Zeile 1: Zeile 1:
 
{{Servereinstellungen}}
 
{{Servereinstellungen}}
{{Zum Überarbeiten}}
 
  
 
Als Administrator/in können Sie auf der Seite ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Server > Sitzungsinformationen'' verschiedene Einstellungen vornehmen.
 
Als Administrator/in können Sie auf der Seite ''[[Einstellungen-Block|Einstellungen]] > Website-Administration > Server > Sitzungsinformationen'' verschiedene Einstellungen vornehmen.
Zeile 11: Zeile 10:
 
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.  
 
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 Treiber verwenden (siehe unten).
+
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 <code>$CFG->session_handler_class</code> setzen.
 
''Hinweis'': Diese Einstellung wird nicht angezeigt, sobald Sie in der [[Moodle-Konfigurationsdatei]] ''config.php'' den Parameter <code>$CFG->session_handler_class</code> setzen.
  
 
==Zeitüberschreitung==
 
==Zeitüberschreitung==
Sobald sich Nutzer/innen in Moodle anmelden, startet der Server eine neue Sitzung. Die Sitzungsinformationen protokollieren, auf welche Seiten die Nutzer/innen zugreifen. 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.
+
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.
+
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==
 
==Cookie-Präfix==
Zeile 34: Zeile 33:
  
 
'''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!  
 
'''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:
 +
<code php>
 +
$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
 +
</code>
 +
 +
'''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 <code>$CFG->session_memcached_number_of_replicas</code> 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:
 +
<code php>
 +
$CFG->session_handler_class = '\core\session\file';
 +
$CFG->session_file_save_path = $CFG->dataroot.'/sessions';
 +
</code>
 +
 +
'''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:
 +
<code php>
 +
$CFG->session_handler_class = '\core\session\database';
 +
$CFG->session_database_acquire_lock_timeout = 120;
 +
</code>
 +
 +
'''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 <code>max_allowed_packet</code> 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 Cache#Redis Server installieren|Redis Server]] und die [[Redis Cache#Redis PHP-Treiber installieren|Redis Extension]] installiert sind.
 +
 +
In der [[Moodle-Konfigurationsdatei]] ''config.php'' können Sie den Treiber wie folgt konfigurieren:
 +
<code php>
 +
$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;
 +
</code>
  
 
==Siehe auch==
 
==Siehe auch==

Aktuelle Version vom 23. Januar 2018, 10:44 Uhr


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;

Siehe auch