Moodle是一个学习平台,旨在为教育工作者,管理人员和学习者提供一个强大,安全和集成的系统来创建个性化的学习环境。 它在许多环境中使用,从教育,电子学习到认证测试开始。 我每天亲自使用它来教授我的学生在操作系统课程,老师和学生,爱它。 在本教程中,我们将学习如何将其作为ISPConfig中的网站安装,还可以使用来自“加密”的SSL证书。 该教程是基于Debian 8,但它也应该工作正常与Ubuntu和其他ISPConfig支持的Distros。 那么开始前的前提是什么?
- 安装了ISPConfig(本指南应该确定https://www.youcl.com/tutorial/perfect-server-debian-8-4-jessie-apache-bind-dovecot-ispconfig-3-1/ )
- DNS正确配置为指向您的站点(对于我们的测试,我们使用course.servisys.it作为示例的参考),这对于正确配置Let's Encrypt
1.安装DNS
在我们的示例中,我们说,我们将使用域course.servisys.it,所以当我们打开我们的Moodle网站时,我们将使用 https://course.servisys.it,因此配置DNS。 转到ISPConfig中的DNS选项卡,并编辑您的DNS,看起来像下图: 注意选择A记录类型。 这是非常重要的一步,因为我们通过加密生成SSL证书来使用A记录。 如果您在外部提供商管理您的DNS,则必须在那里创建相同的记录类型。2.创建网站
现在,在ISPConfig的“网站”标签中,创建一个新的网站,像以前的DNS设置一样,编辑以下选项: 自动子域名:在我的情况下,我已经从www。 因为我的域是course.servisys.it。 如果将其设置为www,则加密自动化将尝试为 www.course.servisys.it生成 证书 ,并将失败。 所以要注意这个选项。 SSL:启用SSL。 我们加密:是的,我们想生成一个这样的证书。 PHP:Fastcgi对我来说很好。 现在点击保存并等待,该证书将被正确发出。 等等几分钟,尝试打开你的网站,在我的情况下 https://course.servisys.it,如果一切 顺利,你会看到绿色的酒吧!3.数据库创建
让我们创建一个数据库用户和数据库与moodle一起使用。 转到站点选项卡,然后转到数据库用户>新用户。 选择与之关联的客户端,选择名称和密码,如下所示: 记笔记:- 数据库用户
- 密码
4.修改MySql配置
默认的mysql配置,需要一些修改才能使用Moodle。 您必须编辑文件:nano /etc/mysql/my.cnf并在开始时添加 红线
[client] port = 3306 socket = /var/run/mysqld/mysqld.sock default-character-set = utf8mb4总是在同一个文件中,在[mysqldump] statmente开始之前,稍稍下来,再次添加 红线
#Moodle - Matteo innodb_file_format = Barracuda innodb_file_per_table = 1 innodb_large_prefix character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci [mysqldump] quick quote-names max_allowed_packet = 16M这些修改是必需的,因为它们是安装Moodle的先决条件,或在安装过程中不会让您继续安装。 之后,使用以下命令重启MySql:
/etc/init.d/mysql restart
5.准备安装Moodle
我们现在准备好准备安装Moodle,我们将从命令行执行,因为它比FTP更快:) 在此页面上,选择适合您需要的安装,在生产环境中,我建议您使用稳定版本。 当时我们写的是3.2.2。 所以从命令行去你的网站的目录,在我的情况下,这些是命令:cd /var/www/course.servisys.it/web
rm index.html
wget https://download.moodle.org/download.php/direct/stable32/moodle-3.2.2.tgz
tar -zxvf moodle-3.2.2.tgz
cp -pr moodle/* ./
cp -pr moodle/.* ./当您使用cd命令时,显然可以将其更改为您的站点的名称。 我们已经删除了默认的index.html页面,因为我们希望第一个页面serverd将是index.php。 之后,我们需要修复文件的所有权,以适应我们的用户和组,知道这是正确的,你简单的发布
ls -al你应该看到很多文件,一些contina的用户web *客户端*,在我的情况下:
drwxr-xr-x 18 1005 1005 4096 mar 11 22:16 report drwxr-xr-x 24 1005 1005 4096 mar 11 22:16 repository -rwxr-xr-- 1 web42 client1 14 apr 13 17:25 robots.txt drwxr-xr-x 2 1005 1005 4096 mar 11 22:16 rss drwxr-xr-x 7 1005 1005 4096 mar 11 22:16 search drwxr-xr-x 2 web42 client1 4096 apr 13 17:25 stats drwxr-xr-x 5 1005 1005 4096 mar 11 22:16 tag -rw-r--r-- 1 1005 1005 615 mar 11 22:16 tags.txt drwxr-xr-x 6 1005 1005 4096 mar 11 22:16 theme你可以看到,我的用户是web42,我的组是client1,所以现在修改权限:
chown -R web42:client1 *
chown -R web42:client1 .*并修复脱衣服的缺陷
chown root:root stats/ error/那么我们去创建一个没有公开访问的moodledata目录,这样做简单地在私有目录中创建它。
mkdir ../private/moodledata
chown -R web42:client1 ../private/moodledata