Yoshidaさま
色々とアドバイスありがとうございます。
もう一点だけ質問させていただきます。
MoodleのEC2へコンテンツ用のストレージを追加したとすると、Moodleから追加したコンテンツにアクセスするための設定はどこでできますでしょうか?
質問ばっかりで申し訳ありませんがよろしくお願いいたします。
恐らく、以下のAmazon S3 bucketのようなプラグインを使ってアクセスすることになるのだと思います。
[Moodle plugins directory: Amazon S3 bucket]
https://moodle.org/plugins/repository_s3bucket
> S3を追加するのではなく、Moodleのサーバー自身に別ディスクとしてストレージを追加し、追加したストレージに保存した動画コンテンツにMoodleからアクセスできればよいのです。
「管理 > サイト管理 > プラグイン > リポジトリ > リポジトリを管理する」ページで「ファイルシステム」を「有効 & 表示」に設定変更した上で「別ディスク」内のディレクトリを「リポジトリインスタンス」として追加してください。
例えば、サーバに追加された「別ディスク」を「/data」としてマウントした場合、以下のようなLinuxコマンドにより、「別ディスク」内のディレクトリ「external_repository」をMoodleからアクセス可能なリポジトリインスタンスとして追加できます。
# cd /data
# mkdir external_repository
# chown apache. external_repository
# chmod 777 external_repository
# cd /var/www/moodledata/repository
# ln -s /data/external_repository
参考資料:
[File system repository - MoodleDocs]
https://docs.moodle.org/39/en/File_system_repository
Yoshidaさま
お世話になっております。
あれから情報システム部に相談し、以下の対応をしていただきました。
1. 追加でファイルシステムを以下のようにマウント対応(ボールド部分)
Filesystem
1K-blocks Used Available Use% Mounted on
devtmpfs
8202628 72 8202556
1% /dev
tmpfs
8213188 0
8213188 0% /dev/shm
/dev/xvda1
41151788 12037044 29014496 30% /
/dev/xvdf 102687672
61464 97366944 1% /var/www/html/moodledata
2.マウントしたディレクトリのパーミッションを以下に変更
drwxrwxrwx
3 apache apache 4096 Aug 3 10:12 moodledata
次のステップとしては、Moodle > サイト管理 > プラグイン > リポジトリ の「ファイルシステムのリポジトリの設定」でインスタンスをの作成かと思いますが、具体的にどのような作業になりますでしょうか?
リポジトリインスタンスを作成する > ファイルシステムリポジトリの設定 ページに移行しますが、「名称」に何を入力すればよいでしょうか?
Moodleの「config.php」にマウントしたディレクトリを追加する必要はないでしょうか?
以上よろしくお願いいたします。
> 次のステップとしては、Moodle > サイト管理 > プラグイン > リポジトリ の「ファイルシステムのリポジトリの設定」でインスタンスをの作成かと思いますが、具体的にどのような作業になりますでしょうか?
以下の手順ではいかがでしょうか。
> リポジトリインスタンスを作成する > ファイルシステムリポジトリの設定 ページに移行しますが、「名称」に何を入力すればよいでしょうか?
任意のリポジトリ名を入力してください。
> Moodleの「config.php」にマウントしたディレクトリを追加する必要はないでしょうか?
必要ありません。
Yoshidaさま
お世話になります。
権限設定の件ではなく、ファイルピッカの使い方でした。
確認不足でした。
ファイルピッカの使い方で質問なのですが、イメージを挿入すると下記のメニューが表示されます。
・ファイルのコピーを作成する
・ファイルのエイリアス/ショートカットを作成する
を選択できますが、実際に「ファイルのエイリアス/ショートカットを作成する」にしても実際の選択したファイルのリンクと異なります。
実際のファイルパス(Moodelのファイルピッカで選択した順番)
movie_data/movies/lms/tdc/Design/*******.png
挿入後のファイルパス
https://aaa.bbb.com/draftfile.php/219/user/draft/135553526/*******.png
イメージファイルの前に「135553526」が付いています。
活動ページごとのID別にイメージがコピーされてしまうのでしょうか?
マウントしたexternal_repositoryに入っているファイルパスそのままを利用することはできないのでしょうか?
ファイルピッカに関しましては以下のオンラインドキュメントをご覧ください。
[File picker - MoodleDocs]
https://docs.moodle.org/39/en/File_picker
[File picker FAQ - MoodleDocs]
https://docs.moodle.org/39/en/File_picker_FAQ
> イメージファイルの前に「135553526」が付いています。活動ページごとのID別にイメージがコピーされてしまうのでしょうか?
はい、そうです。以下のようにlib/weblib.phpの824行目あたりの関数make_draftfile_url()でイメージのURLにコンテクストID ($context->id) が付加されます。
/**
* Factory method for creation of url pointing to draft file of current user.
*
* @param int $draftid draft item id
* @param string $pathname
* @param string $filename
* @param bool $forcedownload
* @return moodle_url
*/
public static function make_draftfile_url($draftid, $pathname, $filename, $forcedownload = false) {
global $CFG, $USER;
$urlbase = "$CFG->wwwroot/draftfile.php";
$context = context_user::instance($USER->id);
return self::make_file_url($urlbase, "/$context->id/user/draft/$draftid".$pathname.$filename, $forcedownload);
}
> マウントしたexternal_repositoryに入っているファイルパスそのままを利用することはできないのでしょうか?
external_repository内のファイルにウェブアクセス可能であれば利用できると思いますが、恐らく、難しいのではないでしょうか。
このディスカッションスレッドは2020年 07月 27日(月曜日) 当初のご質問「コンテンツのエイリアス設定方法について」と異なる内容になっていると思われますため、今回の投稿で私からのお返事は終了とさせて頂きます。