安装 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