当前位置:文档之家› Linux环境下moodle在线学习平台的安装和配置

Linux环境下moodle在线学习平台的安装和配置

Linux环境下moodle在线学习平台的安装和配置山东省济南第一中学黄宝华邮编:250100山东省济南市二环东路999号Moodle是澳大利亚教师Martin Dougiamas 基于建构主义教育理论而开发的开放源码的课程管理系统(CMS),也称作知识管理系统(LMS)或虚拟学习环境(VLE)。

在全球信息化迅猛发展的今天,越来越多的教育工作者开始利用这个工具创建在线的教学系统,国内也有不少大专院校运用了此系统,然而在中小学,由于受到传统教育模式、文化意识的影响,加上技术方面、硬软件投入的限制,moodle平台在国内的发展并不理想,不过我们可以欣喜的看到,有很多的教师正积极的尝试着这种教学模式并取得了很好的效果,他们在网络教学的理论与实践水平上都有较大的提升。

作为信息技术教师和网络工程师,我希望能从技术应用的角度谈一下moodle平台的安装和配置过程,讲述的重点还是在于环境的选取和软件的配置。

我们知道,moodle程序是由php脚本语言构成的,此种语言的跨平台能力较强,既可运行于windows系统,也可运行于linux、Mac OS X等系统,由于windows系统自身的原因,服务器经常出现异常,在安全性和稳定性上存在诸多不足,给教师和学生带来教学上的不便,我们推荐选用linux操作系统,基于以下几个理由:第一,它的网络性能强大,对硬件的完全支持,具有良好的安全性、稳定性。

第二,在低配置的个人电脑上也能运行流畅。

第三,架构在linux上的web服务器较为流行和普遍。

第四,可以使用全部开源软件,甚至可以按需编译模块为己所用,这对提高技术人员的实际应用水平也有很大帮助,同时也省却了相关的软件投入,一举而多得。

实际应用上我选取了CentOS作为linux环境,安装系统时添加开发环境GCC,用来编译源代码的PHP,WEB服务器Nginx和数据库Mysql。

主要步骤有如下几步:一、安装数据库mysql安装mysql(假设下载的软件都在/mysrc目录):建立用户和组:#grep mysql /etc/group查询系统中是否有mysql这个用户组,没有则添加:#groupadd mysql# grep mysql /etc/passwd#查询系统中是否有mysql这个用户,没有则添加:#useradd -g mysql -M -s /bin/false mysql#cd /mysrc#tar zvfx mysql-5.1.55.tar.gz#cd mysql-5.1.55配置安装参数,生成Makefile文件#./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-collation=utf8_general_ci \ --with-extra-charsets=gb2312,big5,gbk,binary,ascii --enable-thread-safe-client编译并安装:#make && make install#cd /usr/local/mysql设置/usr/local/mysql目录属主:#chown –R mysql.#chgrp –R mysql .初始化数据库:#bin/mysql_install_db --user=mysql#chown –R root .#chown -R mysql varmysql配置文件f# cp /mysrc/mysql-5.1.55/support-files/f /etc/f运行mysql数据库#bin/mysqld_safe --user=mysql &mysql.server是mysql数据库运行控制脚本,拷贝到系统目录加可执行属性#cp /mysrc/mysql-5.1.55/support-files/mysql.server /etc/rc.d/init.d/mysqld#chmod +x /etc/rc.d/init.d/mysqld初始化后的数据库访问密码为空,在此设定并记住新密码#/usr/local/mysql/bin/mysqladmin -u root password 'new-password'#/usr/local/mysql/bin/mysqladmin -u root -h localhost.localdomain password 'new-password'配置开机自动运行Mysql数据库服务#ln -s /etc/rc.d/init.d/mysqld /etc/rc.d/rc3.d/S99mysqld#ln -s /etc/rc.d/init.d/mysqld /etc/rc.d/rc3.d/K99mysqld#ln -s /etc/rc.d/init.d/mysqld /etc/rc.d/rc5.d/S99mysqld#ln -s /etc/rc.d/init.d/mysqld /etc/rc.d/rc5.d/K99mysqld因为作为了一个系统服务,数据库服务的开启和关闭可以通过下面2条命令完成。

#service mysqld start#service mysqld stop二、安装php(cli模式)#tar jvfx php-5.3.8.tar.bz2#cd php-5.3.8#./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc \--with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config \--with-pdo-mysql=/usr/local/mysql --with-iconv-dir=/usr/local --with-freetype-dir \--with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml \--disable-rpath --enable-safe-mode --enable-bcmath --enable-shmop \--enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex \ --enable-fpm --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl \--with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap#make && make test && make installPHP配置文件php.ini,可以进行适当的编辑以满足平台需要:#cp php.ini-production /usr/local/php/etc/php.iniphp-fpm进程管理配置文件的编辑:#cp /usr/local/php/etc/ php-fpm.conf.default /usr/local/php/etc/ php-fpm.conf部分内容如下:listen = 127.0.0.1:9000user = wwwgroup = www配置无误后开启管理进程:# /usr/local/php/sbin/php-fpm这将会监听9000端口,接受并处理php脚本程序,和web服务器配合工作。

三、安装WEB服务器Nginx作为轻量级WEB服务器,Nginx在高负载下优于Apache,若干知名网站也纷纷利用它作为反向代理服务器和负载均衡器提供WEB服务。

#tar zvfx nginx-1.0.9.tar.gz#cd nginx-1.0.9#./configure –prefix=/usr/local/nginx --user=www --group=www --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module#make && make install修改配置文件nginx.conf(Linux下用”vim /usr/local/nginx/nginx.conf “命令编辑),包含如下内容:user www www;server{client_max_body_size 20M;listen 80;server_name ;index index.php;root /var/www/;#for moodle pluginfilerewrite "^/moodle/pluginfile.php/(.*)$" /moodle/pluginfile.php?file=/$1 last;rewrite "^/moodle/draftfile.php/(.*)$" /moodle/draftfile.php?file=/$1 last;}location ~ .*\.(php|php5)?${fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;include fastcgi.conf;}上述内容主要是确定运行nginx的用户和组,站点路径,以fastcgi方式运行php脚本程序,里面的两条重写规则主要解决了moodle站点默认带斜线参数情况下上传的文件和图片无法定位的问题,apache服务器因支持斜线参数故没有此问题。

运行nginx:# /usr/local/nginx/sbin/nginx至此,我们的moodle在线学习平台的环境组建完成,可以继续进行后续的工作了。

孔子说的好“工欲善其事,必先利其器”,我们要想使学习平台稳定运行,优化运行,就必须精心配置耐心打造,不断完善运行环境,尽最大可能将系统的性能发挥出来,当然后期还可以进一步优化处理,诸如php图形处理模块、缓存加速模块的添加,都是增加功能提高性能的具体措施。

现在,我们来安装moodle软件,因为平台环境已经建立完毕,安装过程显得更为容易。

相关主题