1. Giới thiệu về Moodle
Moodle (viết tắt của Modular Object-Oriented Dynamic Learning Environment) là một phần mềm nền cho một hệ quản trị đào tạo (LMS). Moodle được sáng lập năm 1999 bởi Martin Dougiamas, người tiếp tục điều hành và phát triển chính của dự án.
Moodle được thiết kế với mục đích tạo ra những khóa học trực tuyến với sự tương tác cao. Tính mã mở cùng độ linh hoạt cao của nó giúp người phát triển có khả năng thêm vào các mô đun cần thiết một cách dễ dàng.
Tính năng
Moodle có các tính năng cần thiết cho một hệ thống đào tạo trực tuyến, ngoài ra còn có thêm một số tính năng độc đáo (ví dụ như có thêm bộ lọc,...)
Moodle được xây dựng theo phân đoạn, và nó dễ dàng được mở rộng bằng cách thêm các thành phần phụ. Cấu trúc cơ bản của Moodle hỗ trợ các thành phần phụ sau:
Các hoạt động
Các nguồn tài nguyên
Các kiểu câu hỏi
Các trường dữ liệu
Giao diện đồ họa
Phương thức chứng thực
Phương thức ghi danh
Lí do ta sử dụng Moodle:
Phần mềm nguồn mở giúp bạn không phụ thuộc vào một công ty phần mềm đóng.
Khả năng tùy biến
Được hỗ trợ nhanh, hiệu quả.
Chất lượng tốt, ổn định, phù hợp với mục đích.
Moodle được hỗ trợ tích cực bởi những người làm trong lĩnh vực giáo dục.
Ảnh hưởng trên toàn thế giới.
Moodle, giống như các công nghệ mã nguồn mở khác, có thể tải về và sử dụng miễn phí.
Cơ hội cho các sinh viên tham gia dự án.
Với mô hình mở như Moodle, cho phép bạn trao đổi trực tiếp với chính những người phát triển phần mềm, góp ý kiến và yêu cầu chỉnh sửa.
Các mục chính trong bộ tài liệu xây dựng hệ thống:
Cài đặt Moodle (cài trên Centos7)
Cài đặt theme Moodle (thay đổi giao diện, cấu hình giúp trông bắt mắt hơn)
Add danh sách thành viên số lượng lớn
Phân quyền giáo viên tạo khóa học
Tạo đề thi và kiểm tra thử
2. Sơ đồ hệ thống
3. Cài đặt Moodle
Ở đây ta sẽ cài Moodle trên hệ điều hành Centos7 đã được update các dịch vụ.
# yum -y update
Cài đặt Apache httpd
Cài đặt httpd
# yum -y install httpd
# rm -f /etc/httpd/conf.d/welcome.conf
Cấu hình file httpd
# vi /etc/httpd/conf/httpd.conf
# :set nu
Dòng 151: AllowOverride All
Dòng 164: DirectoryIndex index.html index.php
Thêm: ServerTokens Prod
KeepAlive On
# :x ( thoát và lưu cấu hình vừa set up )
systemctl start httpd
systemctl enable httpd
Mở Firewall:
firewall-cmd --add-service=http --permanent
firewall-cmd --reload
Cài đặt PHP:
# yum -y install php php-mbstring php-pear
# systemctl restart httpd
Cài đặt MariaDB:
# yum -y install mariadb-server
# vi /etc/my.cnf
Thêm vào dưới cùng
[client]
default-character-set = utf8mb4
[mysqld]
innodb_file_format = Barracuda
innodb_file_per_table = 1
innodb_large_prefix
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake
[mysql]
default-character-set = utf8mb4
# systemctl start mariadb
# systemctl enable mariadb
Cấu hình cho MariaDB:
# mysql_secure_installation
# set root password? Y
Sau đó điền pass 123456a@
# remove anonymous users Y
# disallow root login remotely Y
# remove test database Y
# reload privilege tables Y
Mở Firewall:
firewall-cmd --add-service=mysql --permanent
firewall-cmd --reload
Cài đặt gói REPOS cần thiết:
yum install epel-release -y
#rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Xóa một vài thành phần bản PHP cũ:
# yum -y remove php php-common
Cài bản PHP mới:
#yum -y install php70w php70w-curl php70w-gd php70w-intl php70w-ldap php70w-mysql php70w-pspell php70w-xml php70w-xmlrpc php70w-zip php70w-common php70w-opcache php70w-mbstring php70w-soap
Hoặc
Trước tiên chúng cài đặt remi repo là kho chứa php:
# yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y
Tiếp theo cài đặt gói yum-untils:
# yum install yum-utils -y
Và kích hoạt remi-php72 (bản mới nhất ở thời điểm hiện tại) bằng lệnh:
# yum-config-manager --enable remi-php72
Sau đó cài đặt php và các gói mở rộng thông dụng:
yum install php-fpm php-common php-opcache php-pecl-apcu php-cli php-pear php-pdo php-mysqlnd php-pgsql php-pecl-mongodb php-pecl-redis php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml –y
Loại bỏ thành phần không cần thiết:
# yum -y remove webtatic-release
Cài đặt Moodle:
Đầu tiên ta cần tải moodle từ trang chủ, sau đó giải nén. Dùng WinSCP copy nội dung bên trong thư mục giải nén được sang đường dẫn /var/www/html
Tạo nơi lưu trữ, tên moodledata ( nên tạo ngay nơi ta vừa giải nén )
# mkdir /var/www/moodledata
Đặt quyền kiểm soát Moodle cho Apache:
# chown -R apache:apache /var/www/moodledata
# chown -R apache:apache /var/www/html
Tạo MySQL database cho Moodle:
# mysql -u root -p
Nhập Password 123456a@
Vào giao diện MariaDB
CREATE DATABASE moodledb DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'moodleuser'@'localhost' IDENTIFIED BY '123456a@';
GRANT ALL PRIVILEGES ON moodledb.* TO 'moodleuser'@'localhost';
FLUSH PRIVILEGES;
Tiếp theo ta cho phép Apache có quyền khởi tạo cũng như viết thư mục moodledata
# cd /var/www/moodledata
find . -type f -exec chmod 0644 {} \;
find . -type d -exec chmod 0755 {} \;
sudo chcon -t httpd_sys_content_t /var/www/moodledata -R
sudo chcon -t httpd_sys_rw_content_t /var/www/moodledata -R
Sau đó ta khởi động lại dịch vụ
# systemctl restart httpd
Rồi ấn tiếp theo
Tiếp theo
Đến đoạn này là chọn kiểu Database. Do chúng ta sử dụng MariaDB nên chọn MariaDB. Rồi ấn tiếp theo.
Đây là cài đặt database lấy thông tin mà ta cài của MariaDB. Cần điền các thông tin như User, ở đây là Root. Pass mà ta đặt ở MariaDB là 123456a@
Ngoài ra còn cần chỉnh name Database do trong list ta đặt tên là moodledb. Và MariaDB dùng cổng 3306 nên ta điền vào rồi ấn tiếp theo.
Ta dùng winSCP truy cập vào trong thư mục /var/www/html Tạo một file tên config.php và copy nội dung trên trình duyệt vào trong file.
Rồi quay lại trình duyệt và ấn next
Chúng ta ấn tiếp tục thôi.
Đây là kết quả khi ta cài chuẩn các bước trên. Nó sẽ ghi là môi trường trên có đầy đủ điều kiện tối thiểu để cài đặt. Nếu nó không hiện như thế này thì ta cần xem lại các bước tiến hành lúc nãy. Ấn tiếp tục thì nó sẽ bắt đầu quá trình cài đặt.
Nó sẽ hiện như trên. Sau khi cài đặt thành công hết tất cả các gói thì sẽ có nút tiếp tục ở dưới cùng.
Tiếp theo là điền các thông tin của tài khoản admin. Trên chỉ là một ví dụ. Bạn cần điền đủ các thông tin mang dấu chấm than màu đỏ. Mật khẩu cần có một chữ viết hoa. Sau đó nhấn Cập nhật hồ sơ
Đây là tên của hệ thống và tên viết tắt, đặt tùy ý. Ngoài ra còn thiết lập múi giờ và chứng thực.Ta có thể đặt chứng thực = email được moodle xác thực và cung cấp nhưng ở đây ta sẽ tạm tắt đi.
Sau đó ấn lưu thay đổi.
Và chúng ta đã hoàn thành cài đặt Moodle trên Centos7.
Cài đặt theme cho Moodle
Sau khi cài đặt xong moodle và đăng nhập bằng tài khoản quản trị. Giao diện mặc định của moodle 3.3 là như thế này.
Theme giúp thay đổi giao diện theo ý mình muốn. Ở đây ta sẽ add một theme free mà có thể dễ dàng tải ở trên mạng là theme Academi : https://moodle.org/plugins/theme_academi
Chú ý: Các bạn tải đúng version của theme sao cho tương thích với version của Moodle
Sau đó ta dùng WinSCP để truy cập vào server ta đã cài moodle (ở đây là 66.0.0.66, root – 123456a@). Ở bên trái chính là file theme mà mình đã tải từ link ở trên.
Giải nén file mà ta vừa tải. Ta có folder academi.
Sau đó copy folder academi từ bên trái vào thư mục theme theo đường dẫn /var/www/html/theme
Sau khi copy xong. Ta trở lại trình duyệt và reset lại trang. Nếu nó trở về trang mặc định thì vào trong máy và nhập lệnh:
# systemctl restart httpd
Sau đó restart trình duyệt 1 lần nữa, nó sẽ có kết quả như sau:
Ta ấn nâng cấp cơ sở dữ liệu Moodle ngay bây giờ. Nó sẽ add thêm theme academi mà ta vừa cho vào folder theme. Và kết quả trả về sau khi add thành công như bên dưới.
Ta ấn tiếp tục, nó sẽ trả về các trang thiết lập giao diện mà ta vừa mới add, bao gồm logo hay link trích dẫn.... Công đoạn thiết lập ta có thể chỉnh sau. Hãy ấn lưu các thay đổi để có thể trở lại trang chủ.
Phải, nó chưa thay đổi gì. Giờ ta hay ấn vào Quản trị hệ thống ở thanh bên trái.
Sau đó chọn : Hình thức trình bày => Giao diện => Bộ chọn giao diện
Sau đó nhấn Đổi chủ đề
Sau đó chọn Sử dụng giao diện
Và sau đây là kết quả
Ta có thể ấn lại phần giao diện ở cái thanh chỉ mục phía trên. Nó sẽ xuất hiện trang thiết lập các tùy chọn cho theme như slide, logo, banner, v…v…
Vậy là ta đã cài đặt theme thành công
Tăng khả năng upload file bài giảng lên moodle
Đầu tiên ta vào trong server và gõ
# php –i|grep “Loaded Configuration File”
Kết quả cho ra sẽ có dạng
# php –i|grep “Loaded Configuration File”
Loaded Configuration File => /etc/php.ini
Ở đây ta đã tìm được file php.ini mà ta cần cấu hình lại
Dùng WinSCP, vào /etc/php.ini ( hoặc có thể dùng vi /etc/php.ini )
Ta thay đổi các giá trị sau ( sử dụng Ctrl+F để tìm dễ dàng hơn )
max_execution_time = 600
max_input_time = 600
memory_limit = 256M
post_max_size = 128M
upload_max_filesize = 128M
Sau đó ta chỉnh sửa file httpd.conf
# vi /etc/httpd/conf/http.conf
Thêm dòng này vào cuối
LimitRequestBody 104857600
Sau đó khởi động lại httpd
# systemctl restart httpd
Vậy là moodle đã gia tăng thêm khả năng upload file, cho phép upload tối đa lên đến 128mb.
Add thành viên, danh sách thành viên số lượng lớn
Tạo file notepad DS thành viên ngăn cách bởi dấu “,”
Username,password,lastname,firstname,email
username: ký danh đăng nhập
password: mật khẩu đăng nhập (chú ý ít nhất 6 ký tự, có ít nhất 1 ký tự số, 1 ký tự in hoa, 1 kí tự thường và 1 kí tự đặc biệt)
lastname: Nếu đã nhập tên lớp học ở mục trên, cột này nhập tên đầy đủ
firstname: Tên thành viên, trong trường hợp tạo các lớp học, để dễ dàng tra cứu nên đề tên lớp học (không dấu) cho tất cả thành viên.
email :email của thành viên
Chẳng hạn là như vậy:
Tiếp theo các bạn Save As file với tên mới , để định dạng là UTF-8
Giờ thì ta vào trang chủ và đăng nhập bằng tài khoản admin và vào Quản trị hệ thống
Ở phần thành viên, ta chọn vào Nhập danh sách thành viên
Giao diện nhập danh sách thành viên sẽ được hiện lên, hãy để ý vào những ô đỏ
Đầu tiên là ở ô chọn một tệp, bạn chọn vào Upload a file rồi chònile mà chúng ta vừa mới tạo
Ở đây của chúng ta tên file là moodle2.txt
Sau đó ấn đăng tải tệp này.
Tiếp theo là CSV delimiter, ta chọn dấu “,” do chúng ta ngăn cách các trường trong file .txt là dấu “,”. Còn về Bảng mã thì là UTF-8.
Sau đó ấn Nhập danh sách thành viên, nó sẽ hiện ra như sau:
Ở đây ta nhìn thấy danh sách mà ta viết đã được moodle hiểu đúng các thông tin, không sai chữ cái, v..v..
Ngoài ra ở ô Bắt buộc thay đổi mất khẩu ta các các giá trị như buộc thay khi mật khẩu yếu, hoặc ko cần đổi hoặc tất cả đều phải đổi. Tùy nhu cầu mà ta chọn.
Sau đó ta ấn Nhập danh sách thành viên
Đây là kết quả khi add thành công. Ngoài ra có thể có nhiều TH lỗi như trùng email với tài khoản đã có hay mật khẩu không đủ mạnh. Hệ thống sẽ thông báo lỗi giúp ta hiểu và chỉnh sửa lại.
Hoặc đơn giản hơn là khi ta chỉ cần add 1 thành viên nào đó thì ta có thể vào quản trị hệ thống -> thành viên -> thêm thành viên mới
Sau đó ta nhập các thông tin vào và ấn tạo là xong
Vậy là ta đã add danh sách thành viên hay 1 thành viên vào trong Moodle