阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

搭建基于Windows + Apache + PHP + MySQL的Moodle平台

115次阅读
没有评论

共计 16173 个字符,预计需要花费 41 分钟才能阅读完成。

说起 Moodle,我相信学习教育技术的同学应该都不陌生,在大学的网络与远程教育课中,我有幸与传说中的 Moodle 相遇,然后相知,但是我绝对不会跟你们说一直到我毕业,我都没有找到一个合适的时间与这位 Ms.Moodle 相识,尽管我知道她对我蛮有好感!这是为什么呢?为什么呢?为……呢?好吧,我承认,我之所以没能好好认识一下 Moodle,无外乎 Moodle 一直以来给我的感觉就一个:配置起来异常繁琐,不仅安装步骤甚多,需要安装的软件甚多,而且稍不注意就会出错,出错不要紧呀,要紧的是一个芝麻大的错还需要花大半天时间来研究。总之一句话:安装一次,心力交瘁一次。这几天要不是因为需要在 Windows Server 2008 R2 Enterpris 服务器上安装一个 Moodle,我都不知道我什么时候才会再次带着一丝敬畏以及一丝惆怅来研究 Moodle。虽然这次也是经过几天的鏖战,但是最终还是大功告成,于是我以迅雷不及掩耳盗铃之势,果断写下这篇关于如何搭建 Moodle 的文章,没啥别的想法,就是希望能帮助大家更好更快地搭建起属于自己的 Moodle 平台。

好了,废话不再啰嗦,下面就正式开始我们的 Moodle 搭建之旅吧,小伙伴们,Are you ready?Let’s go!!!

首先,简单介绍一下这次安装 Moodle 用到的软件:

①apache_2.2.21-x64-openssl-1.0.0e.msi;

②MySQL-5.5.40-winx64.msi;

③php-5.4.8-Win32-VC9-x64.zip;

④Moodle3.0.2+。

因为服务器是 64 操作系统,考虑到性能问题,所以 Apache、PHP、MySQL 都 s 使用了 64 位的安装包,Moodle 安装所需软件集合安装包的下载地址

到 Linux 公社 1 号 FTP 服务器下载

—————————————— 分割线 ——————————————

FTP 地址:ftp://ftp1.linuxidc.com

用户名:ftp1.linuxidc.com

密码:www.linuxidc.com

在 2016 年 LinuxIDC.com\6 月 \ 搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台 \

下载方法见 http://www.linuxidc.com/Linux/2013-10/91140.htm

—————————————— 分割线 ——————————————

大家请自行下载。

到这里,有的小伙伴可能会问“Moodle 不是有很多集成的安装包吗,直接下载一个一键安装包分分钟就搞定啦!”。确实,使用一键安装包能帮我们免去非常多的步骤,而且几乎不会出现什么安装错误,但是我要说的是,现在的一键安装包无非就是将 Apache、PHP、MySQL、Moodle 等软件进行了整合与封装,其自身就是一个封闭的 PHP 环境 + Moodle 平台,正所谓“凡事有利则有弊”,一键安装包虽然安装简单,但是却不够灵活,而且并发性能较差,用一键安装包搭建起来的 Moodle 很可能满足不了我们的性能需求,还有很重要的一点就是使用一键安装包不利于我们深入去理解 Moodle 的技术架构,因为我们不清楚 Apache、PHP、MySQL 和 Moodle 之间具体怎么关联起来的,倘若有一天我们想自己开发一款 Moodle 插件,或者是大脑灵光一闪,想自己做一个类似 Moodle 的平台,我们就必须更加清楚地理解 Moodle 的框架及其运行所依赖的 PHP 开发环境。也就是说,我们除了掌握 Moodle 的基本操作和使用方法之外,还必须对 PHP 相关的一些知识有所了解,了解的越多,掌握的越多,我们对 Moodle 的理解就越深。所以我在这里得出的结论是:征服 Moodle 第一步:老老实实学习 PHP 环境搭建。

首先,我们来安装 Apache,步骤如下:

1. 点击 apache_2.2.21-x64-openssl-1.0.0e.msi 安装包,出现:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

2. 点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

3. 选择 I accenpt the terms int the license agreement,点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

4. 点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

5. 这一步需要填写 Apache 服务的一些信息,填写的信息建议按照每一项括号中的格式来填写。

a) Network Domain 即 Apache 的网络域名,如果你想公开你的 Web 服务器让其他人也能够访问,那么你就填你申请到的正式域名,否则就建议按照给定格式随便填写

b) Server Name 指 Apache 服务的名字,同样,如果有正式的服务名就填写正式的服务名,没有就按照给定格式随便填写;

c) Administrator’s Email Address 即 Apache 管理员的邮箱地址,同样按照给定格式随意填写。

d) 下面的单选框直接选择默认推荐的项,即 for all users,on port 80,as a service — Recommended,表示为所有用户开放 Apache 服务,并且默认 80 作为 Apache 服务端口号。

然后点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

6.Typical 为典型安装模式,Custom 为自定义安装模式,我们选择 Custom 模式,点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

7. 这里可以选择需要安装的项和安装的路径,我们选择安装全部项,即选中 Apache HTTP Server 2.2.21。我选择的安装路径为 E 盘下的目录,大家可以自行选择一个合适的路径。然后点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

8. 点击 install 开始安装。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

9. 点击 Finish 完成安装。

10. 接下来我们可以通过在浏览器中输入 http://localhost 来验证 Apache 是否安装成功,如果浏览器输出“It Works”,则表示 Apache 安装成功了,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

至于为什么输入 http://localhost 会出现“It Works!”,是因为 Apache 安装成功之后即启动了 Apache 服务,如果在浏览器中访问 localhost,则网络请求将发送给 Apache 服务器,Apache 服务接收到请求之后便会去默认的站点根目录寻找相应的站点文件进行访问,Apache 默认的站点根目录位于安装完成之后的 htdocs 文件夹,我的电脑上的路径为 E:\Program Files\Apache Software Foundation\Apache2.2\htdocs,在 htdocs 文件夹下,默认有一个 index.html 的文件,打开 index.html,我们会发现里面就一段很简单的 html 代码,在 html 的 body 部分显示了一行文字,即“It Works!”

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

到这里,我们就可以开始思考了,待会儿我们安装 Moodle 的时候要怎样才能访问 Moodle 的安装主页了呢?大家先自己想一想,后面在进行到 Moodle 安装的步骤时我会详细说明。

安装好了 Apache,我需要简单说明一下我们怎样启动和关闭 Apache。

首先,找到 Apache 的控制台。在开始菜单的 Apache 安装目录里面有一个 Monitor Apache Services,点击它就可以打开控制台了,此外,在 Windows 资源管理器中 Apache 安装目录的 bin 里面,也可以找到控制台,即 ApacheMonitor.exe 文件,点击它便可打开 Apache 控制台,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

控制台打开后,电脑右下角会出现控制台的图标,如图(蓝色圈中即控制台图标):

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

双击控制台图标,我们进入控制台界面:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

左边 Service Status 框中列出了当前计算机上所有的 Apache 服务器,我们现在启动的是安装好的 Apache2.2。在右边有一排按钮,通过点击这些按钮,我们可以选择要启动的 Apache 服务,并对其进行启动、关闭、重启等操作。我们在安装和访问 Moodle 的时候,必须要保证 Apache 服务是正常开启的。

安装完 Apache 只是完成了整个配置的一部分,我们要想搭建整个 PHP 环境还需要进行进一步的配置。

接下来,我们讲解一下 PHP 的配置。

首先,把 PHP 的压缩包 php-5.4.8-Win32-VC9-x64.zip 解压到你要安装 PHP 的目录(我是直接解压到 E 盘中 Program Files 文件夹下面的),为了避免文件夹名字过长,我们重命名解压后的文件夹为 php54,文件夹可随意取名,只要符合规范就 OK,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

解压之后的文件夹中有几个关键的地方需要说明一下。

1. 关于 ext 文件夹,这个文件夹下面有很多.dll 文件(.dll 文件为动态链接库文件),这些文件是 PHP 的扩展文件,扩展文件的作用是对现有版本的 PHP 进行一些功能和性能上的扩充,以使 PHP 的功能和性能得到更大程度的发挥,我们在后面安装 Moodle 的时候需要在 PHP 的配置文件中打开一些扩展,比如 php_curl 扩展、php_gd2 扩展、php_mbstring 扩展、php_mysql 扩展、php_mysqli 扩展等;

2. 将 php54 下的 php.ini-production 文件重命名为 php.ini,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

php.ini 将作为 PHP 的配置文件,我们对 PHP 的配置主要是在 php.ini 中进行的。关于如何配置 php.ini 我们将在安装配置好 MySQL 之后详细说明。

3. 通过重命名得到 php.ini 之后,我们需要回到 Apache 的配置文件 httpd.conf 中进行更改,让 PHP 与 Apache 之间关联起来,只有 PHP 与 Apache 关联起来之后,PHP 文件或者 PHP 工程才能在 Apache 上正常跑起来。我们要在 httpd.conf 做的更改如下:

a) 添加对 php 动态共享库的支持,即通过 LoadModule 载入 php 中的动态链接库。在 php54 目录下面有一个 php 的动态链接库 php5apache2_2.dll,我们需要在 httpd.conf 中载入。如何载入呢?其实我们只需要添加一行代码:LoadModule php5_module “E:/Program Files/php54/php5apache2_2.dll”,注意,大家自己安装的时候需要在 LoadModule php5_module 后面指定自己电脑上相应的路径,我电脑上的路径是 E:/Program Files/php54/php5apache2_2.dll。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

b)  添加对 php 解析的支持。我们需要让 apache 能够对后缀为.php 格式的文件进行解析,因此需要在节点下加入对.php 格式文件对应 MIME-type 的支持,这里也只需要加入一行代码:AddType application/x-httpd-php .php。顺便我们在这里加入 php.ini 的路径。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

此外,我在这里对 httpd.conf 中的几个关键的部分进行一些说明。

1.DocumentRoot 和 Directory 权限文件夹。

a) DocumentRoot。在 httpd.conf 中有一行代码指定了站点根目录,即:DocumentRoot “E:/Program Files/Apache Software Foundation/Apache2.2/htdocs”,表示我当前的站点根目录位于 E:/Program Files/Apache Software Foundation/Apache2.2/htdocs 下。在不考虑多站点配置的情况下,我们默认访问的是此目录所代表的站点。因为安装 Moodle 不需要进行多站点配置,因此我们就不详细讲解多站点配置方面的内容。关于多站点的配置,我会在另外一篇博客中为大家进行讲解。

b) Directory 权限文件夹。节点指定了所有站点的访问权限。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

Directory “E:/Program Files/Apache Software Foundation/Apache2.2/htdocs” 表示所有站点都在 E:/Program Files/Apache Software Foundation/Apache2.2/htdocs 下面。如果还有其他目录下的站点需要进行访问的话,我们就必须更改 Directory 指定的路径,保证要访问的站点目录被包含在 Directory 指定的路径下面。

此外,需要特别注意的是,我们需要在这里设置 Allow from all,表示接受其它主机的访问。只有将 Director 的访问权限配置为 Allow from all,我们才能用其它的主机访问服务器 Apache 上的站点。

2. 在节点中配置文件索引。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

我们在 DirectoryIndex 后面追加对.html .htm .php 文件格式的索引。这样我们在访问站点的时候就可以自动对这些格式的文件进行检索。

3. 利用伪静态配置多站点。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

我们可以对这里进行修改,以通过伪静态的方式实现多站点配置。当然,这里不是我们讲解的重点,因此我暂时不多做说明。

4. 关于虚拟主机的配置。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

5. 配置完 Apache,我们需要测试 Apache 的本地访问和局域网访问,这时候可能会出现在本地访问时没有问题,但是通过局域网就访问不了 Apache,是什么原因呢?多数情况下是因为 Windows 防火墙的原因,我们需要在 Windows 防火墙中添加 Apache 服务到信任程序列表里面。

经过以上的种种折腾,我们的 Apache 和 php 就关联起来了,接下来我们在站点根目录(我的是 E:/Program Files/Apache Software Foundation/Apache2.2/htdocs)下面写一个 test.php 文件来输出 php 的相关信息,test.php 的代码如下:

echo phpinfo();

我们在服务器上通过 http://localhost/test.php 进行访问,不出问题的话将会显示出 php 的相关信息,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2016-06/132044p2.htm

接下来,我们开始安装并配置 MySQL。

1. 双击 MySQL 的安装程序开始安装,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

2. 点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

3. 选择 I accept the terms in the License Agreement,点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

4. 选择 Custom,点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

5. 这里可以点击 Browse 更改默认的安装路径,我选择安装在我的 E 盘 Program Files 文件夹下,需要安装的项按照默认的即可,点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

6. 点击 Install,开始安装

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

7. 点击 Next

8. 点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

9. 点击 Finish,完成安装,然后开始配置 MySQL。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

10. 点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

11. 选择 Detailed Configuration,点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

12. 因为我们需要将安装程序作为服务器程序供其它主机访问,因此我们选择 Server Machine,点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

13. 选择默认的 Multifunctional Database,点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

14. 下拉选择 \MySQL Datafiles\,点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

15. 这里设置同时连接到 MySQL 的最大并发数,考虑到一个班的学生同时使用 Moodle 并发量会比较大,因此我们选择 Manual Setting,并选择 Concurrent connections 为 75。点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

16. 设置 MySQL 的端口,默认为 3306,可以在正常的端口范围内自行设置,我们就默认为 3306 不做任何更改,其它设置也默认。这个时候可能会因为别的程序端口也为 3306,导致 3306 端口号被占据,我们可以自行更改这里要设置的端口号,或者先结束掉占据了 3306 端口的程序再继续安装。然后点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

17. 这里选择 MySQL 的字符集信息,我们选择默认的即可。点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

18. 默认 MySQL 服务的实例名为 MySQL,我们可以自己命名,这里我就选择默认的 MySQL,并选中 Include Bin Directory in Windows PATH。点击 Next

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

19. 在这里设置 MySQL 的密码,并选中 Enable root access from remote machines。点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

20. 点击 Execute。等待一会儿如果如下显示即说明 MySQL 安装成功,反之,如果提示一些错误信息,则说明没有成功安装,没有安装成功的原因可能是之前已经安装过 MYSQL,出现了安装信息的冲突,我们可以卸载之前安装的 MYSQL,需要注意的是,要想卸载干净 MySQL 不仅要在程序管理中卸载掉 MySQL,还要在注册表中删除 MySQL 的注册表信息,并 MySQL 的安装目录和数据存放目录也得一起删除。关于如何彻底卸载 MySQL,大家请参考:http://jingyan.baidu.com/article/f96699bbaa8fc1894f3c1b5a.html。

21. 点击 Finish,即完成了 MySQL 的配置。

关于 MySQL 我再补充一点:如果我们在电脑上安装了多个 MySQL,很可能出现端口冲突,这时候我们可以修改每一个 MySQL 实例的端口,避免端口的重复。我们可以在 MySQL 安装目录下的 my.ini 中配置端口。

到此为止,Apache、PHP、MYSQL 的配置就基本完成了,这是否表示我们接下来就能够很顺利地安装 Moodle 了呢?答案是否定的,因为在安装 Moodle 的时候还需要我们开启一些 PHP 的扩展,只有这些扩展全部打开了,我们才能正常安装 Moodle。

接下来,我们开始尝试安装 Moodle。

1. 首先,我们从 Moodle 官网可以下载到最新的 Moodle 安装包,注意下载的时候不要下载集成好 PHP 环境的 Moodle 安装包,要下载单独的 Moodle 安装包。我下载的是 Moodle3.0.2+ 版本的安装包。

2. 将下载好的 Moodle 安装包解压到 Apache 的根目录下面,我的是在 E:\Program Files\Apache Software Foundation\Apache2.2 下面,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

moodle 文件夹下中包含了安装 moodle 所需要的全部文件,如图:

说起 Moodle,我相信学习教育技术的同学应该都不陌生,在大学的网络与远程教育课中,我有幸与传说中的 Moodle 相遇,然后相知,但是我绝对不会跟你们说一直到我毕业,我都没有找到一个合适的时间与这位 Ms.Moodle 相识,尽管我知道她对我蛮有好感!这是为什么呢?为什么呢?为……呢?好吧,我承认,我之所以没能好好认识一下 Moodle,无外乎 Moodle 一直以来给我的感觉就一个:配置起来异常繁琐,不仅安装步骤甚多,需要安装的软件甚多,而且稍不注意就会出错,出错不要紧呀,要紧的是一个芝麻大的错还需要花大半天时间来研究。总之一句话:安装一次,心力交瘁一次。这几天要不是因为需要在 Windows Server 2008 R2 Enterpris 服务器上安装一个 Moodle,我都不知道我什么时候才会再次带着一丝敬畏以及一丝惆怅来研究 Moodle。虽然这次也是经过几天的鏖战,但是最终还是大功告成,于是我以迅雷不及掩耳盗铃之势,果断写下这篇关于如何搭建 Moodle 的文章,没啥别的想法,就是希望能帮助大家更好更快地搭建起属于自己的 Moodle 平台。

好了,废话不再啰嗦,下面就正式开始我们的 Moodle 搭建之旅吧,小伙伴们,Are you ready?Let’s go!!!

首先,简单介绍一下这次安装 Moodle 用到的软件:

①apache_2.2.21-x64-openssl-1.0.0e.msi;

②MySQL-5.5.40-winx64.msi;

③php-5.4.8-Win32-VC9-x64.zip;

④Moodle3.0.2+。

因为服务器是 64 操作系统,考虑到性能问题,所以 Apache、PHP、MySQL 都 s 使用了 64 位的安装包,Moodle 安装所需软件集合安装包的下载地址

到 Linux 公社 1 号 FTP 服务器下载

—————————————— 分割线 ——————————————

FTP 地址:ftp://ftp1.linuxidc.com

用户名:ftp1.linuxidc.com

密码:www.linuxidc.com

在 2016 年 LinuxIDC.com\6 月 \ 搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台 \

下载方法见 http://www.linuxidc.com/Linux/2013-10/91140.htm

—————————————— 分割线 ——————————————

大家请自行下载。

到这里,有的小伙伴可能会问“Moodle 不是有很多集成的安装包吗,直接下载一个一键安装包分分钟就搞定啦!”。确实,使用一键安装包能帮我们免去非常多的步骤,而且几乎不会出现什么安装错误,但是我要说的是,现在的一键安装包无非就是将 Apache、PHP、MySQL、Moodle 等软件进行了整合与封装,其自身就是一个封闭的 PHP 环境 + Moodle 平台,正所谓“凡事有利则有弊”,一键安装包虽然安装简单,但是却不够灵活,而且并发性能较差,用一键安装包搭建起来的 Moodle 很可能满足不了我们的性能需求,还有很重要的一点就是使用一键安装包不利于我们深入去理解 Moodle 的技术架构,因为我们不清楚 Apache、PHP、MySQL 和 Moodle 之间具体怎么关联起来的,倘若有一天我们想自己开发一款 Moodle 插件,或者是大脑灵光一闪,想自己做一个类似 Moodle 的平台,我们就必须更加清楚地理解 Moodle 的框架及其运行所依赖的 PHP 开发环境。也就是说,我们除了掌握 Moodle 的基本操作和使用方法之外,还必须对 PHP 相关的一些知识有所了解,了解的越多,掌握的越多,我们对 Moodle 的理解就越深。所以我在这里得出的结论是:征服 Moodle 第一步:老老实实学习 PHP 环境搭建。

首先,我们来安装 Apache,步骤如下:

1. 点击 apache_2.2.21-x64-openssl-1.0.0e.msi 安装包,出现:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

2. 点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

3. 选择 I accenpt the terms int the license agreement,点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

4. 点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

5. 这一步需要填写 Apache 服务的一些信息,填写的信息建议按照每一项括号中的格式来填写。

a) Network Domain 即 Apache 的网络域名,如果你想公开你的 Web 服务器让其他人也能够访问,那么你就填你申请到的正式域名,否则就建议按照给定格式随便填写

b) Server Name 指 Apache 服务的名字,同样,如果有正式的服务名就填写正式的服务名,没有就按照给定格式随便填写;

c) Administrator’s Email Address 即 Apache 管理员的邮箱地址,同样按照给定格式随意填写。

d) 下面的单选框直接选择默认推荐的项,即 for all users,on port 80,as a service — Recommended,表示为所有用户开放 Apache 服务,并且默认 80 作为 Apache 服务端口号。

然后点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

6.Typical 为典型安装模式,Custom 为自定义安装模式,我们选择 Custom 模式,点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

7. 这里可以选择需要安装的项和安装的路径,我们选择安装全部项,即选中 Apache HTTP Server 2.2.21。我选择的安装路径为 E 盘下的目录,大家可以自行选择一个合适的路径。然后点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

8. 点击 install 开始安装。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

9. 点击 Finish 完成安装。

10. 接下来我们可以通过在浏览器中输入 http://localhost 来验证 Apache 是否安装成功,如果浏览器输出“It Works”,则表示 Apache 安装成功了,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

至于为什么输入 http://localhost 会出现“It Works!”,是因为 Apache 安装成功之后即启动了 Apache 服务,如果在浏览器中访问 localhost,则网络请求将发送给 Apache 服务器,Apache 服务接收到请求之后便会去默认的站点根目录寻找相应的站点文件进行访问,Apache 默认的站点根目录位于安装完成之后的 htdocs 文件夹,我的电脑上的路径为 E:\Program Files\Apache Software Foundation\Apache2.2\htdocs,在 htdocs 文件夹下,默认有一个 index.html 的文件,打开 index.html,我们会发现里面就一段很简单的 html 代码,在 html 的 body 部分显示了一行文字,即“It Works!”

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

到这里,我们就可以开始思考了,待会儿我们安装 Moodle 的时候要怎样才能访问 Moodle 的安装主页了呢?大家先自己想一想,后面在进行到 Moodle 安装的步骤时我会详细说明。

安装好了 Apache,我需要简单说明一下我们怎样启动和关闭 Apache。

首先,找到 Apache 的控制台。在开始菜单的 Apache 安装目录里面有一个 Monitor Apache Services,点击它就可以打开控制台了,此外,在 Windows 资源管理器中 Apache 安装目录的 bin 里面,也可以找到控制台,即 ApacheMonitor.exe 文件,点击它便可打开 Apache 控制台,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

控制台打开后,电脑右下角会出现控制台的图标,如图(蓝色圈中即控制台图标):

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

双击控制台图标,我们进入控制台界面:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

左边 Service Status 框中列出了当前计算机上所有的 Apache 服务器,我们现在启动的是安装好的 Apache2.2。在右边有一排按钮,通过点击这些按钮,我们可以选择要启动的 Apache 服务,并对其进行启动、关闭、重启等操作。我们在安装和访问 Moodle 的时候,必须要保证 Apache 服务是正常开启的。

安装完 Apache 只是完成了整个配置的一部分,我们要想搭建整个 PHP 环境还需要进行进一步的配置。

接下来,我们讲解一下 PHP 的配置。

首先,把 PHP 的压缩包 php-5.4.8-Win32-VC9-x64.zip 解压到你要安装 PHP 的目录(我是直接解压到 E 盘中 Program Files 文件夹下面的),为了避免文件夹名字过长,我们重命名解压后的文件夹为 php54,文件夹可随意取名,只要符合规范就 OK,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

解压之后的文件夹中有几个关键的地方需要说明一下。

1. 关于 ext 文件夹,这个文件夹下面有很多.dll 文件(.dll 文件为动态链接库文件),这些文件是 PHP 的扩展文件,扩展文件的作用是对现有版本的 PHP 进行一些功能和性能上的扩充,以使 PHP 的功能和性能得到更大程度的发挥,我们在后面安装 Moodle 的时候需要在 PHP 的配置文件中打开一些扩展,比如 php_curl 扩展、php_gd2 扩展、php_mbstring 扩展、php_mysql 扩展、php_mysqli 扩展等;

2. 将 php54 下的 php.ini-production 文件重命名为 php.ini,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

php.ini 将作为 PHP 的配置文件,我们对 PHP 的配置主要是在 php.ini 中进行的。关于如何配置 php.ini 我们将在安装配置好 MySQL 之后详细说明。

3. 通过重命名得到 php.ini 之后,我们需要回到 Apache 的配置文件 httpd.conf 中进行更改,让 PHP 与 Apache 之间关联起来,只有 PHP 与 Apache 关联起来之后,PHP 文件或者 PHP 工程才能在 Apache 上正常跑起来。我们要在 httpd.conf 做的更改如下:

a) 添加对 php 动态共享库的支持,即通过 LoadModule 载入 php 中的动态链接库。在 php54 目录下面有一个 php 的动态链接库 php5apache2_2.dll,我们需要在 httpd.conf 中载入。如何载入呢?其实我们只需要添加一行代码:LoadModule php5_module “E:/Program Files/php54/php5apache2_2.dll”,注意,大家自己安装的时候需要在 LoadModule php5_module 后面指定自己电脑上相应的路径,我电脑上的路径是 E:/Program Files/php54/php5apache2_2.dll。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

b)  添加对 php 解析的支持。我们需要让 apache 能够对后缀为.php 格式的文件进行解析,因此需要在节点下加入对.php 格式文件对应 MIME-type 的支持,这里也只需要加入一行代码:AddType application/x-httpd-php .php。顺便我们在这里加入 php.ini 的路径。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

此外,我在这里对 httpd.conf 中的几个关键的部分进行一些说明。

1.DocumentRoot 和 Directory 权限文件夹。

a) DocumentRoot。在 httpd.conf 中有一行代码指定了站点根目录,即:DocumentRoot “E:/Program Files/Apache Software Foundation/Apache2.2/htdocs”,表示我当前的站点根目录位于 E:/Program Files/Apache Software Foundation/Apache2.2/htdocs 下。在不考虑多站点配置的情况下,我们默认访问的是此目录所代表的站点。因为安装 Moodle 不需要进行多站点配置,因此我们就不详细讲解多站点配置方面的内容。关于多站点的配置,我会在另外一篇博客中为大家进行讲解。

b) Directory 权限文件夹。节点指定了所有站点的访问权限。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

Directory “E:/Program Files/Apache Software Foundation/Apache2.2/htdocs” 表示所有站点都在 E:/Program Files/Apache Software Foundation/Apache2.2/htdocs 下面。如果还有其他目录下的站点需要进行访问的话,我们就必须更改 Directory 指定的路径,保证要访问的站点目录被包含在 Directory 指定的路径下面。

此外,需要特别注意的是,我们需要在这里设置 Allow from all,表示接受其它主机的访问。只有将 Director 的访问权限配置为 Allow from all,我们才能用其它的主机访问服务器 Apache 上的站点。

2. 在节点中配置文件索引。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

我们在 DirectoryIndex 后面追加对.html .htm .php 文件格式的索引。这样我们在访问站点的时候就可以自动对这些格式的文件进行检索。

3. 利用伪静态配置多站点。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

我们可以对这里进行修改,以通过伪静态的方式实现多站点配置。当然,这里不是我们讲解的重点,因此我暂时不多做说明。

4. 关于虚拟主机的配置。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

5. 配置完 Apache,我们需要测试 Apache 的本地访问和局域网访问,这时候可能会出现在本地访问时没有问题,但是通过局域网就访问不了 Apache,是什么原因呢?多数情况下是因为 Windows 防火墙的原因,我们需要在 Windows 防火墙中添加 Apache 服务到信任程序列表里面。

经过以上的种种折腾,我们的 Apache 和 php 就关联起来了,接下来我们在站点根目录(我的是 E:/Program Files/Apache Software Foundation/Apache2.2/htdocs)下面写一个 test.php 文件来输出 php 的相关信息,test.php 的代码如下:

echo phpinfo();

我们在服务器上通过 http://localhost/test.php 进行访问,不出问题的话将会显示出 php 的相关信息,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2016-06/132044p2.htm

3.Apache 的默认站点根目录为 E:\Program Files\Apache Software Foundation\Apache2.2\htdocs,在不配置多站点的情况下,我们直接将站点根目录的路径指定到 E:\Program Files\Apache Software Foundation\Apache2.2\moodle,因此,我们修改 Apache 配置文件 httpd.conf 中的 DocumentRoot 和 Directory 权限文件夹,修改后如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

4. 重启 Apache,打开浏览器,在地址栏中输入 http://localhost/,回车,我们将来到 Moodle 的安装主页 install.php。如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

5. 我们选择语言为中文简体,点击 Next。

6. 之后我们会发现页面提示我们安装 php_curl 扩展,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

出现这个提示的原因在于我们没有打开 php 的 curl 扩展,我们需要打开 curl 扩展才能继续进行下一步。那么我们怎么打开 php_curl 扩展呢?

a) 找到 php 的配置文件 php.ini 并打开;

b) 找到; extension_dir = “ext”,去掉前面的分号,并将””中的值修改为 php 扩展文件所在文件夹的路径,我的电脑上 php 扩展文件所在文件夹为 E:\Program Files\php54\ext,因此修改的结果为 extension_dir = “E:/Program Files/php54/ext”;

c) 找到;extension=php_curl.dll,去掉前面的分号。

OK,这样就可以打开 php_curl 扩展了,后续如果提示要打开其它的扩展,操作步骤都一样,就是去掉;extension=php_xxx.dll 前面的“;”。

7. 开启了 php_curl 扩展之后,我们点击重新载入,就会出现如下页面了:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

网站地址就是我们安装好 Moodle 之后,Moodle 首页的访问地址,Moodle 目录就是 Moodle 的安装目录,数据目录就是我们在使用 Moodle 的过程中产生的数据的存放目录。

8. 我们直接点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

9. 我们选择 Moodle 的数据库为改进的 MySQL(native/mysqli),然后点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

10. 输入 MySQL 数据库的用户名(默认为 root),密码(安装数据库的时候设置的密码),数据库服务端口号(安装的时候设置的端口号,默认 3306),其它默认,点击 Next。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

11. 点击“继续”,出现了如下页面,提示一些扩展仍未打开:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

12. 那么还是按照前面说的打开扩展的方法将这些扩展一一打开。所有扩展打开之后可以最大程度上优化 PHP 的性能。当然,对于一些不是必须开启的扩展,我们可以暂时先跳过。点击“继续”。

13. 开始安装 Moodle,等待一段时间,将会安装完所有的插件。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

14. 点击“继续”

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

15. 填写好 Moodle 管理员的信息之后点击“更新个人资料”。(注意:记住 Moodle 的管理员账号和密码,很重要)

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

16. 在这里可以进一步完善个人资料,完善之后点击“更新个人资料”。

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

17. 经过跋山涉水,万里长征,我们终于来到 Moodle 的首页啦!!!

至此,Moodle 安装成功!

不过到这里还没有完,我们在服务器上通过 http://localhost 确实是可以访问 Moodle 了,但是我们要实现的最终效果是让局域网中的其它电脑也能够访问服务器上的 Moodle。那么该怎么做呢?如果我们不对 Moodle 的配置做任何更改,局域网中的其它电脑是不能访问到服务器上的 Moodle 的,我们用浏览器访问会提示“只能通过 http://localhost 访问”或者“只能通过 http://127.0.0.1 访问”。这个时候,我们需要对 Moodle 的配置文件进行设置。

在我的电脑上,Moodle 的配置文件是 E:\Program Files\Apache Software Foundation\Apache2.2\moodle\config.php,我们打开 config.php,里面的配置如下:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

其中,$CFG->wwwroot  = ‘http://localhost’ 指定了 Moodle 只能在服务器上经由 http://localhost 进行访问,如果我们要在局域网的其它电脑上访问,只需要把 localhost 换成服务器的 IP 地址即可。例如,我的电脑在局域网中的 IP 地址为:192.168.1.103,于是,我把 localhost 替换成 192.168.1.103。更改之后保存,我们在浏览器地址栏中输入:http://192.168.1.103/,回车打开,我们再次成功进入到 Moodle 的首页,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

为了确定局域网中的其它设备可以访问服务器上的 Moodle,我用自己的手机进行了测试,我在手机浏览器中输入 http://192.168.1.103/,同样可以打开 Moodle,如图:

搭建基于 Windows + Apache + PHP + MySQL 的 Moodle 平台

至此,Moodle 全部安装完毕!

剩下的便是在这个搭建好的 Moodle 平台上开展学习和研究啦!

最后,我简单做一下总结,在服务器上搭建 Moodle 平台总共可以分为两大步:

1. 搭建 Apache + PHP + MySQL 环境;

2. 安装 Moodle。

其中,在搭建 Apache + PHP + MySQL 环境的时候需要特别注意的是:

1.Moodle 对 Apache、PHP、MySQL 的版本是有要求的,我们应该选择能够满足 Moodle 最低要求的软件版本;

2. 弄清楚关键的配置环节,如:配置 Apache 最关键的是加入对 PHP 模组的支持和对 PHP 解析的支持,此外就是 Apache 的 DocumentRoot 和访问权限需要合理配置;PHP 中需要开启多项扩展以支持 Moodle 的安装要求,提升 PHP 的性能;MySQL 需要对端口号、最大连接数等进行合理的设置等等。具体配置请参考文中的详细配置步骤。

3. 在安装的过程中会出现各种各样的问题,如:

a) Apache 不能正常启动,原因可能是 Apache 的服务端口和别的软件冲突了,这时候我们可以停止掉与 Apache 服务冲突的进程,也可以更改 Apache 的端口号以避免端口重复;

b) 安装好的 Apache 不能访问,很可能是由于防火墙拦截的原因,我们需要把 Apache 的服务程序添加到 Windows 防火墙的信任列表里面;

c) MySQL 安装失败,原因可能是我们之前安装过 MySQL,我们需要卸载干净之前的 MySQL,包括安装程序、注册表信息、数据文件等。

在安装 Moodle 的时候我们需要注意的是:

1. 通过配置 php.ini 开启相应的 php 扩展,具体开启步骤和方法参见上文;

2. 可能会遇到一些问题导致无法继续安装,这个时候我们先看问题,可以先尝试更改一些配置来调试问题,但是如果始终无法调试好问题,那么我们可以选择彻底删除之前的 Moodle 安装目录和 Moodle 数据存放目录,然后重新解压 Moodle 安装包,重新安装;

3. 安装过程中可能会遇到提示 Apache、PHP 或者 MySQL 版本过低,无法正常安装的问题,这个时候我们就需要下载符合最低要求版本的软件并重新安装,以满足 Moodle 的最低配置要求。

4. 安装完 Moodle 我们需要在局域网中用其他的电脑访问,可能会出现“只能通过 http://localhost 访问”或者“只能通过 http://127.0.0.1 访问”的情况,这个时候我们需要在 Moodle 的 config.php 中配置服务器的 IP 地址。

关于心态,我想说的是,从配置 PHP 环境到安装 Moodle,这个过程确实比较复杂,当我们遇到问题的时候不能急,更不能失去信心,我们要学会根据问题的提示提炼出关键信息,然后依据关键信息去搜索相关资料,通过不断地查阅资料,学习别人处理类似问题的方法,从而一步一步解决面临的问题。一旦你成功了第一次,那么之后的每一次将变得越来越容易!

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-06/132044.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计16173字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中