第一步、安装 Ubuntu 16.10 Server LTS
Moodle 的官方文档表示Ubuntu Server LTS 非常适合运维Moodle的。
1、使用纯代码交互的服务器Ubuntu更加安全、稳定,不容易被攻击。
2、即便在部署了服务器版本的Ubuntu后发现无法适应,也可以自行添加图形界面。
使用Ubuntu 16.* 的优势和需要注意的地方:
1、Ubuntu 16.* 支持 PHP7.0。
2、Moodle 3.01 以及之后的版本都可以使用 PHP7.0。
3、需要注意的是, Moodle3.0.1版本在使用PHP7.0的环境下不支持使用 MSSQL 和 SQLSRV。
Moodle官方更加推荐使用 amd64的版本 (64位版本)的Ubuntu Server。
Ubuntu 16.10 Server的下载地址:http://www.ubuntu.com/download
安装参考(图解):http://www.linuxdiyf.com/linux/25520.html
第二部、安装LAMP (Linux/Apache/Mysql/PHP)环境
在终端输入以下指令:
sudo apt-get update #更新软件源
sudo apt-get install apache2 mysql-client mysql-server php7.0 libapache2-mod-php7.0
在mysql-server的安装过程中,会出现需要填写密码的对话框,如果你对数据库有安全性需求,建议输入密码并牢记。
第三步、安装其他所需的软件
在终端输入:
sudo apt-get install graphviz aspell php7.0-pspell php7.0-curl php7.0-gd php7.0-intl php7.0-mysql php7.0-xml php7.0-xmlrpc php7.0-ldap php7.0-zip php7.0-soap php7.0-mbstring
graphviz: 是AT&T Labs Research开发的图形绘制工具,他可以很方便的用来绘制结构化的图形网络,支持多种格式输出,生成图片的质量和速度都不错。
aspell:Vim 下拼写检查工具。用于代码拼写检查。
php7.0-pspell : 针对php语言的拼写检查工具。
php7.0-curl:php语言下,使用URL语法在命令行方式下工作的开源文件传输工具。
php7.0-gd: php处理图形的扩展库,提供一系列用来处理图片的API。
php7.0-intl : 国际化扩展,是ICU库的一个包装器。
php7.0-mysql : php 7.0 的 MySQL扩展,用于php与MySQL的连接和通信。
php7.0-xml : php 7.0 的 xml 扩展库。
php7.0-xmlrpc : php 7.0 的 XML-RPC 扩展。用于实现应用的分布式计算。
php7.0-ldap : php 7.0 的轻量目录访问协议 (Lightweight Directory Access Protocol)。用于目录检索和LDAP认证。
php7.0-zip : php 7.0 的 zip 扩展,用于解压缩文件。
php7.0-soap :php 7.0 的 soap 扩展 (Simple Object Access Protocol)。它是一种基于 XML 的,可扩展的通信协议。SOAP 提供了一种标准,使得运行在不同平台上并使用不同的编程语言编写的应用程序可以互相进行通信。
php7.0-mbstring :php 7.0 的 mbstring 扩展(Multi-Byte String)。使php 能够支持更多的字符类型,和多种语言编码。主要是unicode。
sudo service apache2 restart #重启Apache服务器,载入新安装的模块。
sudo apt-get install git-core #使用Git 来安装和更新 Moodle应用。
第四步、下载Moodle
我们准备将Moodle放在 /opt (Optional Application Software Packages 可选的应用安装包)目录下。在终端中输入:
cd /opt # 定位到 /opt 目录下
sudo git clone git://git.moodle.org/moodle.git #将moodle 从git库中克隆到本地目录 (根据网络情况,可能会出现克隆失败)
cd moodle#定位到 moodle目录下
sudo git branch -a #检索可用的每个Moodle版本分支列表
sudo git branch --track MOODLE_32_STABLE origin/MOODLE_32_STABLE #选择将要使用的Moodle版本号
sudo git checkout MOODLE_32_STABLE # 将选择的Moodle版本下载到本地
第五步、部署本地存储库到网页服务器上
在终端中输入:
sudo cp -R /opt/moodle /var/www/html/
sudo mkdir /var/moodledata
sudo chown -R www-data /var/moodledata
sudo chmod -R 777 /var/moodledata
sudo chmod -R 0755 /var/www/html/moodle
第六步、设置 MySQL 服务器
首先,我们需要将默认存储引擎更改为innodb,并将默认文件格式更改为Barracuda。同时还需要设置innodb_file_per_table以便Barracuda能够正常工作。
在终端中输入:
sudo vim /etc/myslq/mysql.conf.d/mysqld.cnf# 用vim编辑mysql的配置文档,也可以用vi打开。
在新打开的文档中,找到 【mysqld】小结,在 【Basic Setting】下加入以下语句。(在Vim或者Vi环境下,需要在键盘上按下Insert键才能进行输入操作,或者按下字母I)。
default_storage_engine = innodb
innodb_file_per_table = 1
innodb_file_format = Barracuda
然后保存文档:
Ctrl + C 或者 Esc
:w#保存文档
:q #退出文档
重启MySQL服务器,在终端输入:
sudo service mysql restart
接下来,我们将在MySQL中创建Moodle的依赖数据库,并给予Moodle用户以正确的操作权限。
在终端输入:
mysql -u root -p #进入mysql的管理模式
输入你之前创建的管理员密码
接下来,在MySQL的管理模式下,输入:
mysql > CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
这样我们就在MySQL中创建了叫moodle的数据库并定义了数据库字符集的相关参数。
mysql > CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';
创建用户,在 ‘用户名’处填入你所要创建的用户名称,并在 '密码'处填入你想设置的密码。例如:
mysql > CREATE USER 'moodle123'@'localhost' IDENTIFIED BY '123456';
mysql > GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 用户名@localhost IDENTIFIED BY '密码';
把以上一些列的操作权限授予我们刚创建的用户。
mysql > quit; #退出MySQL管理界面
第七步、完成设置
在终端输入:
sudo chmod -R 777 /var/www/html/moodle #临时开放webroot目录的读写权限
打开你的浏览器,在地址栏输入 http://你的服务器IP地址/moodle. 首次打开会显示如下界面:选择简体中文或者根据你的需求来定制。
第二步,部署Moodle路径。这里只需要将数据目录修改为 /var/moodledata 就可以。
注意,点击向后之后,部分用户可能会出现中文语言包无法下载而导致只能使用英语的提示性文字。可以通过终端的 wget 命令手动下载所需的语言包,并解压到 /var/moodledata/lang 目录下。
wget -c
由于网络问题,也可能出现 wget 方法无法下载语言包的问题。可以通过windows平台的浏览器把语言包下载好,再通过PSFTP (PuTTY) 工具将文件传到你的服务器上。
接下来,选择数据库驱动,选择改进的MySQL(native/mysql)并点击向后。并对数据库进行设置,填入之前在MySQL管理模式下设置的moodle数据库的用户名和密码,并点击向后。
接下来,阅读版权申明并点击继续。
环境检查,只有在服务器满足所有最低需求的情况下才能继续安装。
接下来就等待安装完成,提示创建你的Moodle平台的管理员账户。
至此,Moodle平台的安装就全部结束了。别忘记在安装完成后,在终端输入:
sudo chmod -R 0755 /var/www/html/moodle#收回写权限,保证平台的安全。
最后,祝你使用愉快。