安装 Moodle

来自MoodleDocs
跳转至:导航、​搜索

这个页面解释了如何进行 Moodle 的安装,如果你是技术高手或者有相当的技术经验,请参看页面 快速安装 Moodle 指南

如果你希望在独立机器上运行 Moodle,Moodle 提供了一键安装程序,请参看 Windows 完整程序安装包Mac OS X 完整程序安装包。请注意上面 2 个安装包并不适用服务器上安装的情况。

需求

Moodle主要是在Linux上使用ApacheMySQLPHP开发(有时也被称为LAMP平台)。

如果你怀疑 LAMP 平台的安全性,LAMP 其实是目前最安全和最流行的组合。

同时也有其他的一些选择 - 查看下面链接中的软件部分:

Moodle 安装的基本需求如下:

硬件

  • 磁盘空间:160MB 是程序安装的最小空闲磁盘空间。你也可能需要存储你自己的资料的话,5GB的实际使用空间基本上够用了。
  • 备份空间:至少与你实际运行的程序和数据相同的存储空间,如果能够进行远程备份,那就更加理想。
  • 内存:256MB 的内存为最小内存,强烈建议使用1GB 以上内存。 Moodle 的基本使用情况是: 1G 的内存能够支持10 到20 个的并发用户。但是这个也与你的系统硬件和软件配置有很大的关系。 '并发'的意思为服务器同时在内存中处理的能力,例如用户在某一个时间点内与系统进行交互,而不是指登录系统的用户数量。

软件

  • 操作系统(!).通常用于运行下面的软软件,选择什么样的操作系统通常根据你的技术能力和实际情况来决定。 Linux 和Windows 是最常见的选择(同时也有很好的技术支持)。 如果你可以自由选择操作系统的话,Linux 是最佳的方案。 Moodle 测试了Debian, Ubuntu, CentOS, RedHat, Windows 7/2012 和Mac OS X 的兼容性。
  • Web 服务器, 主要使用Apache。 Moodle 没有完全测试(或者支持)IISlightttpdnginx.com/ cherokee, zeus 和LiteSpeed​​,但是Moodle 应该能够在上面的服务器上正常工作。除此之外,如果你选择使用其他WEB 服务器的话,Moodle 将会终止安装过程。同时你的服务器也配置 PHP。 WEB 服务器使用什么版本并不重要,但是请尽量使用最新版。
  • PHP - 当前的最低版本是5.3.3。你需要为你的PHP 安装一系列扩展,PHP 页面列出了所有需要安装的扩展。如果一些必须的扩展丢失的话,安装程序会在安装环境校验的时候提示您修复并阻止您进入下一步。
  • 数据库。 MySQL 和PostgreSQL 是主要使用的开发数据库,这2个数据库进行了主要的兼容性测试,相关的技术文档也是最全面的。 Oracle 和MSSQL 都能够被完全的支持(注意,一些可选的插件可能没有在这2 个数据库中进行兼容性测试),但是相关的文档和与Moodle 相关的文件没有MySQL/PostgreSQL 这么全面。 MySQL 能提供更多的文档,PostgreSQL 能提供更好的稳定性。你需要在系统中安装PHP 的扩展来支持你选择的数据库。
  • 访问Moodle 使用的浏览器最低版本要求为:Firefox 4, Internet Explorer 8, Safari 5, Google Chrome 11, Opera 9

配置你的服务器

如果你希望评估Moodle,你也可以在桌面计算机中安装Moodle。

有很多方法来安装你的服务器软件,这个根据你选择服务器的不同而不同。一些链接和指向将在 安装 AMP 中。

如果你使用虚拟服务器,服务器需要的一些软件应该已经帮你安装好了。尤其是在共享服务器上,你需要知道如何修改PHP 的配置,例如如何修改最大上传文件大小限制。

不同服务器的配置可能有非常大的不同。

下载和拷贝你的文件到正确位置

重要: 有很多地方可以获得Moodle 的源代码,但是我们建议你到Moodle 的官方网站moodle.org 上去下载源代码。如果你遇到任何问题,你通常能够获得更好的支持。

你有 2 个选择:

  • 从http://moodle.org/downloads 网站上下载你需要的版本,然后解压...
  • 或者 从Git 代码仓库中直接下载源代码(推荐开发人员使用这个方式,这个方式让你更新程序更加简单):
$ git clone -b MOODLE_25_STABLE git://git.moodle.org/moodle.git 

...这个过程将会切换到Moodle 的2.5 稳定分支(最新的每周构建),并且拷贝完整的Moodle 代码仓库。更多GIT 的问题请参考页面Git for Administrators

不管你采用何种方式,当你完全获得Moodle 代码以后,你应该能够在你的机器或者服务器上看到一个叫moodle的目录,这个目录中有一系列的文件和目录。

你可以将整个Moodle 目录拷贝到你Web 服务器的文档目录下,在这种情况下你的网站访问地址为:http://yourwebserver.com/moodle

或者你也可以直接拷贝Moodle 中的内容到你的Web 服务器文档目录下,这样你的访问网址就变得更加简化为http://yourwebserver.com

当你不太明白的时候,请查看你系统和WEB服务器的相关文档。

小提示: 如果你下载Moodle 安装程序到你本地计算机上然后上传到你的服务器上的话,请尽量上传压缩文件到服务器上解压(检查你的文件'文件管理器')。如果你采用的是FTP 上传当个文件,请注意查看FTP 的日志,可能有部分文件在上传的时候丢失。
  • 保护Moodle 文件: 保护Moodle 程序文件不可以被WEB 服务器的用户随意更改是非常重要的。例如在Unix/Linux 操作系统下(使用root)执行下面的命令:
# chown -R root /path/to/moodle
# chmod -R 0755 /path/to/moodle

(文件的所有权为administrator/superuser 用户,也只有administrator/superuser 用户有写入权限,但是其他用户是可以读的)

创建空数据库

下一步需要为你Moodle 安装实例创建一个新的空数据库。你需要为你的Moodle 安装实例找到或者设置下面的信息:nformation for use during the final installation stage:

  • dbhost - 数据库的服务器地址。很有可能是localhost如果的Web 服务器和数据库服务器在同一台机器上,否则你需要在这里设置数据库服务器的名称
  • dbname - 数据库名称,你创建的数据库的名称,比如moodle
  • dbuser - 数据库用户,能够访问Moodle 数据库的数据库用户名。不要使用 root 和超级用户的账号。创建一个账号,只赋予这个账号所需要的最低权限就可以
  • dbpass - 数据库用户使用的密码

如果你的Moodle 站点使用的是虚拟主机服务,你可以通过网页工具访问相关的配置信息,如果你不知道如何配置,请询问你的系统管理员。更多详细信息,可以通过单击下面的数据库分类来获得:

创建(moodledata) 数据目录

Moodle 需要一个目录来存储所有的文件,包括系统上传的文件,临时数据,会话数据等。

Web 服务器需要这个目录具有写入权限。在大型的Moodle 安装实例中,这个目录越大越好。

重要:: 这个目录一定不要放置在Web 服务器下,换句话说,这个目录不能通过网页访问到。如果网页能访问到这个目录的话,将会导致非常严重的安全漏洞。如果你使用的是Linux 操作系统的话,也请不要将这个目录放置到root 账号目录下和你的Moodle 安装程序文件目录下。 Moodle 在安装的时候将会进行校验,如果Moodle 发现了文件,将会阻止安装继续进行。

这里是一个Unix/Linux 的配​​置示例,在创建此目录的时候需要设置权限为所有人都​​可以访问。这种情况是因为Moodle 服务器不是共享服务器。与你的服务器管理员取得联系来确定何种访问权限更加合适,同时也需要Web 服务器用户可以访问到这些文件。

# mkdir /path/to/moodledata
# chmod 0777 /path/to/moodledata

如果你的服务器能够支持ACL,推荐采用下面的授权方式,例如你的Apache 服务器用户www-data:

# chmod -R +a "www-data allow read,delete,write,append,file_inherit,directory_inherit" /path/to/moodledata

如果你计划从命令行中执行PHP 脚本,你需要为当前用户设置同样的权限:

$ sudo chmod -R +a "`whoami` allow read,delete,write,append,file_inherit,directory_inherit" /path/to/moodledata

Web 目录中配置 moodledata 安全性

如果你使用的是虚拟主机配置的网站,你没有办法配置'moodledata'的安全性。你也许可以在'moodledata'目录中使用.htaccess 文件来控制访问权限。这种情况不是对所有系统都是有效的,与你的虚拟主机管理员取得联系,寻求他们的帮助。

创建的文件叫做.htaccess,这个文件只需要有下面的内容就可以了:

order deny,allow
deny from all

开始 Moodle 安装

现在是时候开始运行安装工具来创建数据库表和配置你的网站了。

Moodle 推荐使用命令行来进行安装。

如果因为什么原因你不能使用这种方式进行安装,例如你使用的 Windows 服务器,Moodle 也提供基于 Web 的安装方式。

命令行安装工具

最好使用你系统的 WEB 用户运行命令行安装工具。你需要知道这个是什么 - 查看你的系统管理文档(如:Ubuntu/Debian 是 'www-data',Centos 是 'apache')

  • 使用命令行安装工具的示例(使用 root 进行,但是 'www-data'是你的 Web 用户):
# chown www-data /path/to/moodle
# cd /path/to/moodle/admin/cli
# sudo -u www-data /usr/bin/php install.php
# chown -R root /path/to/moodle

chowns 命令允许脚本写入新文件 config.php file。更多有关脚本的使用,请使用下面的命令:

# php install.php --help

你可能需要被询问到一些本页中没有讨论到的其他设置,如果你也不十分确定配置的信息,请单击确定使用默认配置就可以了。

完整版本,请查看 Administration via command line

基于网页安装工具

使用你的网页浏览器导航到你的 Moodle 网站主页面就可以使用 Web 方式运行安装脚本了。

安装进程将会使用一些页面来完成安装进程。你会被要求同意许可协议,查看数据库中被创建的表,提供管理账号信息和网站的细节信息。

数据库的创建将会需要一些时间,这里请耐心等待。

当数据库创建完成后,你将会看到 Moodle 的前台和后台界面。这时候,你可以使用 Moodle 提供的界面创建一个新的用户。

很多时候,你需要下载新的 config.php 文件然后到上传到你的 Moodle 安装实例中,请参照屏幕的提示。

最终配置

Moodle 的内部设置

在 Moodle 站点管理员界面中有一系列的配置页面(可以从'设置' 块中访问 '网站管理'区)。

这里有一些重要的系统设置,你需要进行检查。

  • 设置> 网站管理 > 插件> 消息输出 > 邮件:配置你自己的 SMTP 邮件服务器和授权信息,这样你的 Moodle 安装实例可以向外发送电子邮件。Moodle 网站的支持人员也可以设置这个界面。
  • 设置> 网站管理 > 服务器 > 系统路径: 设置你系统的 du, dot 和 aspell 执行文件的路径。
  • 设置> 网站管理 > 服务器 > HTTP:如果你的服务器运行在防火墙后,你可能需要在 'Web 代理' 块配置你的代理服务器。
  • 设置> 网站管理 > 区域 > 更新时区:运行这个可以将你配置的时区信息写入到系统中。

余下的任务

  • 配置定时任务: Moodle 的后台任务,比如社区外发电子邮件和进行课程备份时通过脚本来执行的,你可以设置你的脚本执行时间和间隔。这个就是我们常说的定时任务,请参看Moodle 定时任务指南
  • 配置备份:查看 Moodle 站点备份Moodle 自动课程备份.
  • 检查邮件能否正常工作:使用一个有效的电子邮件地址在你的 Moodle 安装实例中 添加测试用户。查看这个用户能否正常的接收到系统发出的电子邮件。如果不能,请查看电子邮件的配置。电子邮件的配置信息位于 [设置> 网站管理 > 插件> 消息输出 > 邮件]。请在系统正常运行前,确保电子邮件功能是能够正常使用的,因为系统是通过电子邮件功能向用户提供找回密码服务的。如果你是系统管理员,但是你也忘记了密码,你需要用电子邮件功能来找回你的密码。
  • 增强 Moodle 网站安全性: 请阅读 Security recommendations 的相关内容。

安装已经完成了 :)

如果安装的时候出现错误了...

你可以尝试下面的一些操作...

  • 参考 Installation FAQ
  • 小心检查你的文件权限。你的操作系统运行用户能否正常读取(不是写入)Moodle 程序文件?你的操作系统运行用户能否正常读取和写入 Moodle 的数据目录:
  • 检查你的数据库权限。你的数据库用户是否已经具有了正常的数据库操作权限,当数据库和程序运行在不同服务器上的时候尤其需要注意这种情况。
  • 当你的 Moodle 安装程序不能创建(config.php) Moodle 配置文件,你可以手动拷贝 config-dist.php 文件为 config.php,然后再尝试编辑文件中有关数据库的配置信息部分。config-dist.php 在 Moodle 安装程序的根目录下。安装程序便可以继续进行了。
  • 当你已经有了 config.php 文件,你可以编辑这个文件来让 Moodle 程序输出调试信息。 Moodle 程序输出的调试信息可以向你提供更加详细的程序运行状态,以便于你查找问题在哪里。如果你具有服务器的访问权限,你也可以查看 Web 服务器的错误信息。
  • 重新检查 php.ini / .htaccess 文件的设置。这里有些技术参数可能需要修改,比如 memory_limit,你是否已经调整了 php.ini / .htaccess 文件的技术参数设置?记住,每次调整后需要重启服务器使设置生效。
  • 在你进行系统安装之前,你是否选择了任何非核心插件,主题和代码?如果你已经选择了,请移除这些配置然后重试,这是因为有些插件可能存在错误或者不兼容的情况。
  • 提交你的问题到Moodle 安装问题 列出你当前运行的软件版本,解释你是怎么进行安装的,发生了什么情况,你看见了什么样的错误信息,你进行了怎样的尝试。尽管系统有可能出现白屏,但是这不是没有原因的,请尽量找到错误信息。
  • 你也可以提交问题到 OSS 计算技术 [http://www.ossez.com/forum-54-1.html]的 Moodle 相关板块,在这里我们将会向你提供中文帮助。

特定平台的安装

注意 通常社区能够提供更多的相关信息。下面的内容可能没有经过验证,也有可能已经过时了,请结合上面的内容一同阅读。

See also