文/陳健 吳海軍
Linux環(huán)境下基于Moodle的課程管理系統(tǒng)的構(gòu)建
文/陳健 吳海軍
隨著e-Learning的發(fā)展,其核心業(yè)務(wù)平臺——課程管理系統(tǒng)CMS(Course Management System)的發(fā)展相當(dāng)迅速。而隨著開放源碼運動的不斷深入,基于開放源碼的課程管理系統(tǒng)由于其開放性、共享性、可根據(jù)用戶需求修改組合等優(yōu)點,為e-Learning項目的實施提供了低成本的平臺解決方案。
Moodle(Modular Object-Oriented Dynamic Learning Environment,模塊化面向?qū)ο髣討B(tài)學(xué)習(xí)環(huán)境)最初是由澳大利亞的Martin Dougiamas博士主持開發(fā)的一套基于社會建構(gòu)主義教學(xué)思想的開放源碼的課程管理系統(tǒng)。Moodle功能強大,發(fā)展十分迅速,根據(jù)其網(wǎng)站(http://moodle.org/stats/)2010年10月份的統(tǒng)計,目前注冊站點49538個,為3700萬位用戶提供了約380萬個課程,包括牛津大學(xué)、劍橋大學(xué)等全球兩百多個國家、5萬余所學(xué)校與機構(gòu)均有使用該系統(tǒng),在我國高校也被廣泛使用。
Moodle的主要功能與特點包括:多種類型課程的開設(shè)、學(xué)習(xí)記錄的跟蹤分析、班級與小組功能、課程資源管理、分?jǐn)?shù)制與等級制雙評價方式、測試題庫功能、多種在線教學(xué)模塊、發(fā)布和評判作業(yè)、成績管理等。
使用Moodle系統(tǒng)的用戶主要分為4種:管理員、開發(fā)人員、教師和學(xué)生。
安裝需求
Moodle主要是在Linux系統(tǒng)中使用Apache、MySQL和PHP開發(fā)的,它同時也支持Windows XP/2000/2003、Solaris 10、Mac OS X、Netware 6系統(tǒng),和PostgreSQL、Oracle、Microsoft SQL Server數(shù)據(jù)庫。筆者對Moodle的介紹主要基于LAMP平臺,不涉及其他操作系統(tǒng)和數(shù)據(jù)庫。
安裝Moodle的需求如下:
1.硬件需求
硬盤空間:至少有160MB剩余空間,這只是安裝的最低需求,如要存儲教學(xué)資料,剩余空間越大越好。
內(nèi)存:至少256MB,推薦1GB。對Moodle來說,通常的原則是每1GB內(nèi)存支持50個并發(fā)用戶。
2.軟件需求
Moodle是使用PHP腳本語言編寫的,它需要Linux系統(tǒng)預(yù)先裝好Apache、MySQL和PHP,目前大多數(shù)主流的Linux套件都會提供上述軟件包。Moodle對這些軟件的最低版本要求取決于用戶所要安裝的Moodle版本,在Moodle的下載頁面http:/ /download.moodle.org上,可以看到不同Moodle版本對這些軟件版本的要求。例如,筆者介紹的Moodle 1.9.10對PHP和MySQL的最低版本要求為:PHP 4.3.0和MySQL 4.1.16。
下載和設(shè)置目錄
Moodle最新版本的軟件包可以通過http://download. moodle.org下載。其軟件包每一個星期更新一次,截至2010年10月,其軟件包的最新穩(wěn)定版本為1.9.10+。
下載的軟件包moodle-weekly-19.tgz解開后將生成一個名為Moodle的目錄,該目錄中包含了Moodle的所有文件。用戶需要將該目錄放置到Web服務(wù)器文檔目錄中(此時,Moodle的URL訪問路徑為http://yourwebserver. com/moodle),或?qū)⒃撃夸浿兴袃?nèi)容直接復(fù)制到Web服務(wù)器文檔目錄中(此時,Moodle的URL訪問路徑為http://yourwebserver.com)。以筆者使用的服務(wù)器為例,如下命令將在Web服務(wù)器文檔目錄中生成一個名為Moodle的目錄:
創(chuàng)建數(shù)據(jù)庫和資料目錄
在安裝Moodle之前,用戶需要創(chuàng)建一個供Moodle使用的空數(shù)據(jù)庫,然后在硬盤上創(chuàng)建一個目錄供Moodle保存用戶上傳的課程資料和其他文件。
1.創(chuàng)建空數(shù)據(jù)庫
用戶需要在MySQL數(shù)據(jù)庫中為Moodle創(chuàng)建一個空數(shù)據(jù)庫(如Moodle)和一個用于訪問該數(shù)據(jù)庫的用戶(如moodleuser)。
下面筆者以使用MySQL客戶端程序為例來說明創(chuàng)建過程:
首先,用戶需要檢查現(xiàn)有數(shù)據(jù)庫,查看是否已有名為Moodle的數(shù)據(jù)庫:
2 rows in set (0.00 sec)
創(chuàng)建一個數(shù)據(jù)庫來存儲Moodle表格,將它命名為Moodle,當(dāng)然,用戶也可以使用其他名字:
創(chuàng)建用于訪問Moodle數(shù)據(jù)庫的用戶名和密碼,并授予該用戶相應(yīng)的數(shù)據(jù)庫訪問權(quán)限。將用戶名設(shè)置為moodleuser,密碼設(shè)置為moodletest。也可以使用其他的用戶名。需要注意的是,用戶設(shè)置的用戶名和密碼將在接下來的配置窗口中用到:
最后,退出MySQL客戶端程序:
2.創(chuàng)建資料目錄
為安全起見,用戶所創(chuàng)建的資料目錄最好不能通過Web直接訪問,即這個目錄不放置在Web服務(wù)器的文檔根目錄中。在筆者使用的服務(wù)器中,Web服務(wù)器文檔根目錄為/var/www/htdocs,所以筆者是在目錄/var/www中創(chuàng)建該資料目錄,用戶可以根據(jù)自己的具體情況來創(chuàng)建。筆者使用的資料目錄名為moodledata,用戶可以自行修改為其他名字,但需要注意的是,該目錄名會在隨后的Moodle安裝界面中用到。
為確保Moodle可以在該資料目錄中保存上傳的文件,用戶需要將該目錄的屬主和組設(shè)置為Web服務(wù)器進(jìn)程的屬主和組(在筆者使用的服務(wù)器中,Web服務(wù)器進(jìn)程的屬主和組的名字均為apache),并設(shè)置該目錄的訪問權(quán)限以確保該目錄的屬主擁有讀、寫和執(zhí)行權(quán)限:
調(diào)整Apache服務(wù)器和PHP的配置
1.調(diào)整Apache服務(wù)器的配置文件httpd.conf
首先,需要確認(rèn)Web服務(wù)器將index.php添加為默認(rèn)頁面。這在Apache的配置文件httpd.conf中是使用DirectoryIndex參數(shù)完成的,如下所示:
然后,如果用戶使用的是Apache 2的版本,需要在httpd.conf中啟用AcceptPathInfo變量,它允許腳本以http:/ /server/file.php/arg1/arg2的方式傳遞參數(shù)。
2.調(diào)整PHP的配置文件php.ini
用戶需要在配置文件php.ini中調(diào)整的內(nèi)容如下所示:
安裝Moodle
1.使用安裝腳本開始安裝
用戶只需使用瀏覽器直接訪問Moodle主頁面,如http://yourserver/moodle/install.php即可開始運行安裝腳本install.php。
安裝腳本將依次通過以下幾個步驟幫助用戶創(chuàng)建Moodle的配置文件config.php:
(1) 選擇安裝語言;
(2) 檢查服務(wù)器的PHP設(shè)置是否滿足要求,如不滿足,屏幕上會顯示,需要滿足需求才能進(jìn)行下一步;
(3) 確認(rèn)Moodle的完整Web地址、Moodle安裝目錄和資料目錄;
(4) 配置數(shù)據(jù)庫,輸入用戶在前面設(shè)置好的數(shù)據(jù)庫名、用戶名和密碼;
(5) 檢查服務(wù)器的運行環(huán)境是否滿足要求,主要是檢查數(shù)據(jù)庫版本、PHP版本和一些PHP擴展支持,如不滿足,屏幕上會有顯示,用戶需要解決這些問題才能進(jìn)行下一步;
(6) 將屏幕上顯示的代碼復(fù)制保存到Moodle根目錄下的config.php文件中。然后,點擊“繼續(xù)”就將進(jìn)入安裝的配置階段。
2.通過管理頁面完成Moodle配置
(1)首先是GPL許可頁面,用戶必須同意才能進(jìn)行下一步;
(2)詢問用戶是否需要無人值守的操作方式,建議不選擇,這樣可以看到整個操作過程;
(3) Moodle開始建立數(shù)據(jù)庫并創(chuàng)建用于存儲數(shù)據(jù)的表格。首先是創(chuàng)建主數(shù)據(jù)庫表格,用戶將看到一組SQL語句,其后跟隨該語句的執(zhí)行結(jié)果,如成功,則顯示SUCCESS,在該頁面的最后應(yīng)顯示“Database was successfully upgraded”,點擊“Continue”;
(4)接下來是創(chuàng)建modular、plugin等各種Moodle模塊需要的表格,這些過程都是自動完成的,如無問題,只需點擊“Continue”即可;
(5)配置管理員賬號,用戶需要在這個頁面輸入管理員的用戶名、密碼、郵件地址等信息,加星號的欄目必須填寫,填寫完后點擊“Update profile”;
(6)用戶將被轉(zhuǎn)到Moodle站點的登錄頁面,如圖1所示,此時,用戶可以輸入剛剛創(chuàng)建的管理員賬號和密碼進(jìn)入系統(tǒng),將看到如圖2所示的Moodle主頁面。如果用戶無法用剛剛創(chuàng)建的管理員賬號和密碼登錄進(jìn)系統(tǒng),用戶可以嘗試使用系統(tǒng)默認(rèn)的用戶名admin和密碼admin登錄系統(tǒng)。
安裝完Moodle后,用戶需要根據(jù)自己課程管理的具體需求,對Moodle的選項、配置文件進(jìn)行一些調(diào)整,同時按照教師的要求開設(shè)課程。從圖2可以看出,Moodle可以配置的選項非常多,這也正是Moodle強大之處。
基本設(shè)置
安裝完Moodle后,首先需要下載并安裝中文語言包,進(jìn)行首頁設(shè)置,以及選擇一個合適的界面主題風(fēng)格。
1. 安裝中文語言包
從Moodle網(wǎng)站上下載的Moodle軟件包默認(rèn)不帶中文語言包,所以需要在安裝Moodle之后,從Moodle的網(wǎng)站http:// download.moodle.org/lang16/下載中文語言包zh_cn_utf8.zip,然后將該語言包復(fù)制到Moodle主目錄中的lang目錄下,在筆者的服務(wù)器上,該目錄的完整路徑為/var/www/htdocs/ moodle/lang,再將該語言包釋放,具體命令如下所示:
圖1 Moodle站點的登錄頁面
圖2 Moodle站點的主頁面
接下來,用戶就可以在登錄頁面的語言選擇中發(fā)現(xiàn)中文語言的選項了,為了使中文選項變?yōu)槟J(rèn)選項,用戶可以以管理員的身份登錄,從Moodle主頁面的左邊欄中,選擇“Language”-->“Language settings”,將“Default language”選擇為中文。雖然登錄界面變?yōu)橹形牧耍卿涍M(jìn)去后的默認(rèn)主頁面文字還是英文的,如果想將默認(rèn)主頁面文字變?yōu)橹形?,需要在Moodle主頁面的右上角,點擊用戶名鏈接,選擇“Edit profile”,將“Preferred language”修改為中文即可。
2.選擇界面主題風(fēng)格
Moodle默認(rèn)提供了很多主題風(fēng)格。如果用戶對Moodle默認(rèn)安裝的界面風(fēng)格不滿意,可以從Moodle主頁面的左邊欄中,選擇“外觀”-->“主題風(fēng)格”-->“主題選擇器”,進(jìn)行選擇。用戶也可以通過Moodle網(wǎng)址http://moodle.org/ mod/data/view.php?id=6552下載各種主題,將下載下來的主題包復(fù)制到Moodle主目錄的theme目錄中進(jìn)行釋放,然后通過“主題選擇器”就可以進(jìn)行選擇了。
3.Moodle首頁設(shè)置
在Moodle主頁面的左邊欄中,選擇“首頁”-->“首頁設(shè)置”,填寫“網(wǎng)站全名”和“網(wǎng)站簡稱”等信息。填寫完這些信息后,當(dāng)進(jìn)入選項菜單時,用戶會發(fā)現(xiàn)在Moodle頁面的上方會多出一個導(dǎo)航欄,如圖3所示,這對用戶了解現(xiàn)有路徑和返回主頁面非常有幫助。
定制界面
用戶一般會在安裝完Moodle后,對其界面選項和排版進(jìn)行調(diào)整,以更符合自己學(xué)校課程管理的需求。下面筆者列出自己對Moodle界面所做的一些修改。
1.將Moodle主頁面底部的Moodle鏈接刪除
修改所選擇界面主題包中的超文本文件,例如,在筆者使用的服務(wù)器中,該文件為/var/www/htdocs/moodle/ theme/相應(yīng)界面主題包/footer.html,將其中包含homelink字符串的一行刪除即可;
2.將Moodle配置頁面底部的“此頁的Moodle文檔”鏈接刪除
修改所選擇界面主題包中的超文本文件,例如,在筆者使用的服務(wù)器中,該文件為/var/www/htdocs/moodle/ theme/相應(yīng)界面主題包/footer.html,將其中包含moodledocslink字符串的一行刪除即可;
3.取消登錄頁面中的訪客登錄按鈕
如果用戶不希望在登錄頁面中顯示訪客登錄按鈕,可以在Moodle主頁面的左邊欄中,選擇“用戶”-->“身份驗證”-->“管理授權(quán)”,將“訪客登錄按鈕”設(shè)置為“隱藏”即可;
圖3 Moodle導(dǎo)航欄
4.取消登錄頁面中的忘記用戶名或密碼處理按鈕
編輯Moodle主目錄中l(wèi)ogin子目錄下的index_form.html文件,在筆者使用的服務(wù)器中,該文件的完整路徑為/var/ www/htdocs/moodle/login/index_form.html,將該文件中forgotsub div塊刪除即可。
開設(shè)課程
筆者主要從管理員的角色介紹課程的開設(shè)方法,有關(guān)教師如何設(shè)計和管理課程的方法可參見網(wǎng)址http://docs. moodle.org/en/Adding/editing_a_course的介紹。
1.課程格式
Moodle提供了好幾種課程格式,用戶可以在Moodle主頁面的左邊欄中,選擇“課程”-->“課程缺省設(shè)置”,在“格式”選項欄中看到,主要有星期格式、主題格式和社區(qū)格式等。Moodle默認(rèn)選擇的是星期格式,這也是目前國內(nèi)高校課程開設(shè)的主要方式。選擇不同的課程格式,會影響到課程內(nèi)容在課程主頁中的顯示方式。
2.添加課程
(1) 添加課程分類:首先,需要添加課程分類,以對開設(shè)的課程進(jìn)行分類。在Moodle主頁面的左邊欄中,選擇“課程”-->“添加/修改課程”-->“添加新類別”;
(2) 添加新課程:在Moodle主頁面的左邊欄中,選擇“課程”-->“添加/修改課程”,點擊合適的課程類別,然后點擊“添加新課程”。在課程設(shè)定頁面中,需要填寫課程的全名、簡稱、開始時間、星期數(shù)等信息,最后點擊“保存更改”;
3.添加課程教師
(1) 添加用戶:首先,用戶需要在Moodle系統(tǒng)中添加一個用戶。在Moodle主頁面的左邊欄中,選擇“用戶”-->“賬號”-->“添加用戶”,添加一個新用戶;
(2) 授予教師權(quán)利:授予該用戶某個課程教師的權(quán)利。在Moodle主頁面的中間欄中點擊課程鏈接,選擇課程頁面左邊欄中的“委派角色”-->“Teacher”,選擇合適的用戶添加到課程中即可。
4.添加學(xué)生
添加學(xué)生賬號有多種方式:手工添加、自主注冊和批量添加等。為確保學(xué)生信息的準(zhǔn)確性,常用的方式是批量添加學(xué)生賬號,以學(xué)生的學(xué)號為用戶名。在Moodle主頁面的左邊欄中,選擇“用戶”-->“賬號”-->“上傳用戶”,將預(yù)先按照指定格式填寫好的用戶文本文件上傳即可。該文件的格式要求可點擊上傳用戶界面中“上傳用戶”標(biāo)題旁邊的問號查看。例如,筆者使用的用戶文本文件格式如下所示:
其中username為用戶的學(xué)號,password為用戶學(xué)號的后4位。firstname和lastname分別為用戶的名和姓,因為這2個字段為必需字段,所以在文件中必須存在。要注意的是,Moodle系統(tǒng)默認(rèn)對用戶的密碼強度要求很高,必須包含數(shù)字、大小寫字母和非字母數(shù)字的字符,這對批量添加用戶時的密碼設(shè)置造成一些難度,所以用戶可以在Moodle主頁面的左邊欄中,選擇“安全相關(guān)”-->“網(wǎng)站策略”,將“密碼規(guī)則”功能暫時取消,以方便用戶信息的批量上傳。
5.解決新建文件夾和上傳文件中文顯示問題
在課程頁面的左邊欄中,教師可以通過點擊“文件”來新建文件夾和上傳文件,但文件夾名稱和上傳文件名稱中的中文不能正常顯示。要解決這個問題,需要編輯Moodle主目錄中的config.php文件,在筆者的服務(wù)器上,該文件的完整路徑為/var/www/htdocs/moodle/config.php,在該文件中添加如下一行內(nèi)容即可:
Moodle的功能非常強大,除了以上介紹的內(nèi)容以外,用戶還可以在Moodle的網(wǎng)站上,找到世界各地的開發(fā)人員為Moodle開發(fā)的各種有趣插件,這些插件極大的擴充了Moodle的功能,為管理人員和教師提供了更多的便利。
(作者單位為南京大學(xué)計算機科學(xué)與技術(shù)系)