セッションFAQ
提供:MoodleDocs
セッションの目的は何ですか?
Webアプリケーションは ステートレス です。つまり、本質的に、プログラム変数に格納されている情報は、スクリプトが完了するたびに失われます。それはすべてのページで起こります。したがって、完全に些細なスクリプト以外の場合は、現在のログインに関するそのユーザの情報を保存する方法が必要です。これを行うにはさまざまな方法がありますが、最も簡単なのは、同じPC上の特定のユーザの情報を短期間保持するPHPのネイティブ $_SESSION[] 配列の実装です。
彼らはどのような情報を保持していますか?
セッションにはさまざまな情報が含まれています。あなたがログオンしているという事実、あなたのユーザプロフィールなど。すべてのMoodleページですぐに利用可能である必要があるもの。
それらはどのように構築されますか?
それはPHPのものです。とても簡単です。 Moodleはsession_start() 'コマンド' を発行し、PHPの $_SESSION 変数にアクセスします。その内容は、書き込まれた file/database/memcached サーバに自動的に保持されます。
それらはどのくらいの期間保持されるべきですか?
現在のセッションを超えてそれらを維持する理由はありません。
サイトのバックアップにそれらを含める必要がありますか?
いいえ、まったくありません。必要な情報はMoodleの当面の目的のためであり、それ以上は必要ありません。
それらを削除する必要がありますか?
セッションファイルは、不要になったときに自動的に削除されます。ファイルが蓄積している場合は、その理由を調べる必要があります。
どうすれば削除できますか?
あまりエレガントではありませんが、静かな時間には、moodledataのsessionsディレクトリを削除するだけです。最悪の事態は、ログインしている人がだれでも捨てられることです。もう少し洗練されたソリューションでは、そのディレクトリ内の数時間以上前のファイルがすべて削除されます。