前書き

Moodleは、誰でも無料でインストールして使用できる、人気のあるオープンソースのWebベースの学習管理システム(LMS)です。 Moodleを使用すると、コース、リーディング、ディスカッションボードなどの学習リソースを作成して、学習者のグループに配信できます。 Moodleではユーザーの役割を管理することもできるため、学生と講師は異なるレベルの資料へのアクセス権を持つことができます。 ウェブサーバーにMoodleをインストールすると、サイトにアクセスできる人は誰でもブラウザベースの学習を作成して参加できます。

このガイドでは、Ubuntu 16.04サーバーにMoodleをインストールして設定します。 Moodleに必要なすべてのソフトウェアをインストールして設定し、セットアップウィザードを実行してテーマを選択し、最初のコースを作成します。

前提条件

このガイドを始める前に、次のものが必要です。

ステップ1-Moodleと依存関係のインストール

Moodleは、スペルチェックライブラリやグラフ作成ライブラリなど、いくつかのソフトウェアに依存しています。 MoodleはPHPアプリケーションであり、追加のPHPライブラリ依存性もいくつかあります。 Moodleをインストールする前に、パッケージマネージャーを使用してすべての必須ライブラリをインストールしましょう。 まず、パッケージの最新リストがあることを確認します。

sudo apt-get update

次に、Moodleの依存関係をインストールします:

sudo apt-get install aspell graphviz php7.0-curl php7.0-gd php7.0-intl php7.0-ldap php7.0-mysql php7.0-pspell php7.0-xml php7.0-xmlrpc php7.0-zip

次に、Apache Webサーバーを再起動して、インストールしたばかりのモジュールをロードします。

sudo systemctl restart apache2

これで、Moodle自体をダウンロードしてインストールする準備が整いました。 「+ curl +」を使用して、公式の配信サーバーからMoodleをダウンロードします。

次のコマンドは、Moodle Webサイトにアクセスし、Moodleの現在の安定バージョン全体を含む圧縮パッケージをファイル「+ moodle.tgz 」に取得します。 ` -L `フラグは、リダイレクトに従うように ` curl +`に指示します。

curl -L https://download.moodle.org/download.php/direct/stable32/moodle-latest-32.tgz > moodle.tgz

これで、 `+ tar +`プログラムでファイルを解凍し、結果のファイルをWebドキュメントルートに配置できます。

sudo tar -xvzf moodle.tgz -C /var/www/html

`+ moodle +`ディレクトリがサーバーのWebルートディレクトリにあることを確認します。

ls /var/www/html

`+ moodle +`ディレクトリがリストされているはずです:

Outputindex.html  moodle

`+ moodle +`ディレクトリ内のファイルを表示します:

ls /var/www/html/moodle

ダウンロードして圧縮解除したばかりのすべてのMoodleファイルとディレクトリが表示されます。

Outputadmin           composer.json     grade          message                    README.txt
auth            composer.lock     group          mnet                       report
availability    config-dist.php   Gruntfile.js   mod                        repository
backup          config.php        help_ajax.php  my                         rss
badges          CONTRIBUTING.txt  help.php       notes                      search
behat.yml.dist  COPYING.txt       index.php      npm-shrinkwrap.json        tag
blocks          course            install        package.json               tags.txt
blog            dataformat        install.php    phpunit.xml.dist           theme
brokenfile.php  draftfile.php     INSTALL.txt    pix                        TRADEMARK.txt
cache           enrol             iplookup       plagiarism                 user
calendar        error             lang           pluginfile.php             userpix
cohort          file.php          lib            portfolio                  version.php
comment         files             local          PULL_REQUEST_TEMPLATE.txt  webservice
competency      filter            login          question
completion      githash.php       media          rating

次に、MoodleのWebルート外にディレクトリを作成して、データベースではなくサーバーに保存されるすべてのコース関連データを保存する必要があります。 ブラウザから直接アクセスできないように、Webルートの外部にこのディレクトリを作成する方が安全です。 このコマンドを実行してください。

sudo mkdir /var/moodledata

次に、所有権を設定して、Webサービスのユーザー `+ www-data`がディレクトリにアクセスできるようにします。

sudo chown -R www-data /var/moodledata

次に、フォルダのアクセス許可を変更して、所有者のみが完全なアクセス許可を持つようにします。

sudo chmod -R 0770 /var/moodledata

サーバーにMoodleができたので、使用するデータベースを設定します。

ステップ2-データベースの構成

Moodleがほとんどのデータを保存するMySQLデータベースを作成する必要があります。 Moodleコードが期待する構造を作成し、Moodleがデータベースへの接続に使用するユーザーを作成します。

しかし最初に、MySQLインストールがMoodleと互換性を持つように、MySQL構成ファイルにいくつかの変更を加える必要があります。 MySQL構成ファイルを開きます。

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

次に、以下の強調表示された行を[基本設定]領域に追加します。これは、新しいデータベースが使用するストレージタイプを構成します。

mysql設定

...
[mysqld]
#
# * Basic Settings
#
user            = mysql
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking



## Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
...

このファイルを保存し、MySQLサーバーを再起動して、新しい設定で構成を再読み込みします。

sudo systemctl restart mysql

これで、Moodleデータベースを作成できます。 これを行うには、MySQLコマンドラインインターフェースを操作します。 このコマンドを実行してください。

mysql -u root -p

プロンプトが表示されたら、MySQLのインストール時に設定したルートパスワードを指定します。

ログインすると、 `+ mysql> +`プロンプトが表示されます。 次のコマンドを実行して、データベースを作成します。

CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

次に、Moodleユーザーを作成します。Moodleアプリケーションにルートパスワードを伝える必要はありません。 このコマンドを実行してください。

create user ''@'localhost' IDENTIFIED BY '';

そして、データベースを編集するための `+ moodler +`ユーザー許可を与えます。 このユーザーは、テーブルを作成して権限を変更する必要があります。

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO ' IDENTIFIED BY '';

次に、MySQLコマンドラインインターフェイスを終了します。

quit;

これでデータベース構成が処理されます。 これで、ブラウザでMoodleを起動し、そこでセットアップを続行できます。

ステップ3-ブラウザーでMoodleを設定する

Moodleの設定を完了するために、ウェブブラウザでサイトを表示し、追加の設定の詳細を提供します。 ウェブサーバーが設定を保存するために、Moodleウェブルートの許可を一時的に変更する必要があります。

sudo chmod -R 777 /var/www/html/moodle

ブラウザを開いて、「+ http:/// moodle +」に移動します。 次のようなページが表示されます。

image:https://assets.digitalocean.com/articles/moodle_ubuntu_1604/TpIkbFk.png [Moodleの初期設定画面]

Moodleを設定するには、以下の手順に従ってください:

  1. 使用する言語を設定して、[次へ]をクリックします。

  2. 次の画面で、* Data Directory を `+ / var / moodledata +`に設定し、 Next *をクリックします。

  3. [データベースドライバの選択]ページで、[データベースドライバ]を[* MySQL(ネイティブmysqli)*に改善]に設定します。 次に、[次へ]をクリックします。

  4. *データベース設定*ページで、ステップ3で作成したMoodle MySQLユーザーのユーザー名とパスワードを入力します。 他のフィールドはそのままにしておくことができます。 [次へ]をクリックして続行します。

  5. ライセンス契約を確認し、[続行]を押してその条件に同意することを確認します。*

  6. 考えられる問題については、サーバーチェック*ページを確認してください。 「サーバー環境はすべての最小要件を満たしています」というメッセージが下部に表示されていることを確認し、[続行]を押します。

  7. Moodleはいくつかのコンポーネントをインストールし、それぞれに「成功」​​メッセージを表示します。 一番下までスクロールして、* Continue *を押します

  8. その後、Moodleの管理者アカウントを設定できるページが表示されます。

  9. *ユーザー名*には、好きなものを入力し、デフォルトを受け入れます。

  10. *認証方法の選択*では、デフォルト値のままにします。

  11. [新しいパスワード]には、使用するパスワードを入力します。

  12. *メール*には、メールアドレスを入力してください。

  13. 残りのフィールドを適切な値に設定します。

  14. [*プロファイルの更新]をクリックします。

  15. フロントページ設定*画面で、*フルサイト名サイトの短縮名*を入力し、場所を設定し、電子メールによる自己登録を許可するかどうかを選択します。 次に、[*変更を保存]をクリックします。

これが完了したら。 * admin *ユーザーとしてログインして、新しいMoodleインストールのダッシュボードに移動します。

Moodleのセキュリティを改善するために、もう1つの小さな変更を加えましょう。 デフォルトでは、Moodleは `+ / var / moodledata`フォルダに誰でも書き込み可能なパーミッションでファイルを作成します。 Moodleが使用するデフォルトのパーミッションを変更して、それを強化しましょう。

エディターでMoodle設定ファイルを開きます:

sudo nano /var/www/html/moodle/config.php

次の行を見つけます。

config.php

$CFG->directorypermissions = 0777;

次のように変更してください。

config.php

$CFG->directorypermissions = ;

次に、ファイルを保存してエディターを終了します。

最後に、Moodleがすでに世界で書き込み可能なフォルダを作成しており、インストールプロセス中に、 `+ / var / moodledata +`ディレクトリ自体のパーミッションをリセットします:

sudo chmod -R 0770 /var/moodledata

Moodleが設定されたので、いくつかのカスタマイズを行い、Moodleウェブインターフェースの感触をつかむためのテストコースを作成しましょう。

ステップ4-Moodleのカスタマイズと最初のコースの作成

あなたのサイトが稼働しているので、あなたが夜にしたい最初のことの1つはあなたのMoodleサイトを登録することです。 これにより、Moodleメーリングリストに登録され、セキュリティアラートや新しいリリースなどの最新情報を入手できます。

登録するには、左側のボックスにある[サイト管理]リンクをクリックし、[登録]をクリックします。 次に、適切な詳細をWebフォームに入力します。 Moodleサイトを公開して、他の人が見つけられるようにすることもできます。

次に、Moodleサイトのテーマを変更しましょう。 [サイト管理]を選択し、[外観]タブを選択して、[テーマセレクタ]を選択します。 次の図のようなページが表示されます。これは、現在* Default *デバイスで「ブースト」テーマを使用していることを示しています。これは最新のWebブラウザーを指します。

image:https://assets.digitalocean.com/articles/moodle_ubuntu_1604/OWwL2P7.png [テーマ選択画面]

[テーマの変更]ボタンをクリックすると、利用可能な他のテーマを表示する画面が表示されます。 テーマ名の下にある「テーマを使用」ボタンをクリックすると、Moodleサイトはそのテーマを使用してサイトのすべてのコンテンツを表示します。 タブレットや電話など、デバイスごとに異なるテーマを選択することもできます。

Moodleサイトを見た目通りに近づけたので、最初のコースを作成しましょう。 ナビゲーションメニューから[*ホームホーム]を選択します。 空のコースのリストと[新しいコースを追加]ボタンが表示されます。 そのボタンをクリックして、次の図のようなフォームを表示します。

image:https://assets.digitalocean.com/articles/moodle_ubuntu_1604/L8A6scz.png [コース作成画面]

名前、短縮名、説明、その他の関連する詳細など、コースに関する情報を入力します。 次に、一番下までスクロールし、[保存して表示]をクリックします。

これで、最初のMoodleコースの準備が整いました。 Moodleのインターフェースを使用して、コースへのレッスンとアクティビティの追加を開始できます。

ただし、新しいコースを受講するためにサインアップを開始する前に、Moodleのインストールが本番の準備ができていることを確認する必要があります。 まず、ApacheのTLS / SSL証明書を設定して、サーバーとクライアント間のトラフィックを暗号化する必要があります。 これを行うには、チュートリアルhttps://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-16-04[Apacheを保護する方法Ubuntu 16.04で暗号化しましょう]。 また、データが保護されていることを確認するには、https://www.digitalocean.com/community/tutorials/how-to-backup-mysql-databases-on-an-ubuntu-vps [MySQLデータベースをバックアップ]定期的に。 `+ / var / moodledata / +`フォルダーを含むサーバー上のファイルもバックアップする必要があります。 チュートリアルhttps://www.digitalocean.com/community/tutorials/how-to-choose-an-effective-backup-strategy-for-your-vps[VPSに効果的なバックアップ戦略を選択する方法]では、ファイルのバックアップ。

結論

この記事では、Ubuntu 16.04サーバーにMoodleをインストールしてセットアップしました。 Moodleは、堅牢で高度に設定可能なWebアプリケーションです。 Moodleのドキュメントを参照し、Moodleユーザーと管理者の世界的なコミュニティに連絡して、それを最大限に活用する方法についてのアイデアを入手してください。 ハッピームードリング!