Cách cài đặt hệ thống Mahara ePortfolio trên CentOS 7

theanh

Administrator
Nhân viên
Mahara là một hệ thống e-portfolio mã nguồn mở. Nó cũng có thể được sử dụng như một nền tảng mạng xã hội. Mahara được viết bằng PHP và sử dụng máy chủ cơ sở dữ liệu PostgreSQL hoặc MySQL để lưu trữ dữ liệu của nó. Bạn có thể sử dụng Mahara để tạo danh mục đa phương tiện được cá nhân hóa và để cộng tác với những người khác.

Trong hướng dẫn này, chúng tôi sẽ cài đặt Mahara trên máy chủ CentOS 7.

Điều kiện tiên quyết
  • Máy chủ CentOS 7 tối thiểu
  • Quyền root

Bước 1 - Cài đặt Apache​

Bạn nên cập nhật máy chủ trước khi cài đặt bất kỳ gói nào để các gói và kho lưu trữ hiện có được cập nhật.
Mã:
yum -y update
Sau khi hệ thống của bạn được cập nhật, bạn có thể tiến hành cài đặt máy chủ web Apache.
Mã:
yum -y install httpd
Bây giờ hãy khởi động máy chủ web Apache và cho phép nó khởi động khi khởi động bằng lệnh sau.
Mã:
systemctl start httpd
Mã:
systemctl enable httpd

Bước 2 - Cài đặt PHP​

Mahara hỗ trợ tất cả các phiên bản PHP lớn hơn 5.3. Nhưng trong hướng dẫn này, chúng ta sẽ cài đặt PHP 7.1 vì PHP v5.3 đã hết vòng đời. Cài đặt phiên bản PHP mới nhất sẽ đảm bảo tính bảo mật và hiệu suất tối đa của ứng dụng.

Kho lưu trữ YUM mặc định của CentOS không có PHP 7.1, do đó bạn sẽ cần thêm kho lưu trữ Webtatic vào hệ thống của mình. Cài đặt bản phát hành EPEL:
Mã:
yum -y install epel-release
Mã:
yum -y update
Nhập lệnh để cài đặt kho lưu trữ Webtatic.
Mã:
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Mã:
yum -y update
Nhập lệnh sau để cài đặt PHP 7.1 cùng với tất cả các phụ thuộc cần thiết.
Mã:
yum -y install php71w php71w-mysqli php71w-gd php71w-cli php71w-mcrypt php71w-mbstring php71w-dom
Để kiểm tra xem PHP đã được cài đặt thành công hay chưa, bạn có thể chạy:
Mã:
php -v
Bạn sẽ nhận được kết quả tương tự như this.
Mã:
[root@liptan-pc ~]# php -vPHP 7.1.6 (cli) (xây dựng: 10 tháng 6 năm 2017 07:28:42) (NTS)Bản quyền (c) 1997-2017 The PHP GroupZend Engine v3.1.0, Bản quyền (c) 1998-2017 Zend Technologies
Bây giờ bạn sẽ cần cấu hình một số cấu hình trong PHP. Mở tệp cấu hình PHP, php.ini bằng trình soạn thảo văn bản yêu thích của bạn.
Mã:
nano /etc/php.ini
Tìm dòng sau và Bỏ chú thích dòng đó và đặt múi giờ theo khu vực của bạn. Ví dụ:
Mã:
[Date]; Xác định múi giờ mặc định được sử dụng bởi các hàm ngày; http://php.net/date.timezonedate.timezone = Asia/Kolkata
Tiếp theo, hãy tìm dòng sau:
Mã:
session.entropy_length = 32
Bỏ chú thích dòng và tìm dòng sau:
Mã:
post_max_size = 8M
Thay đổi giá trị từ 8M thành 999M. Lưu tệp và thoát khỏi trình chỉnh sửa.

Bước 3 - Cài đặt MariaDB​

MariaDB là một nhánh của cơ sở dữ liệu MySQL. Để cài đặt MariaDB trên máy chủ của bạn, hãy chạy:
Mã:
yum -y install mariadb mariadb-server
Chạy các lệnh sau để khởi động MariaDB và cho phép nó khởi động khi khởi động.
Mã:
systemctl start mariadb
Mã:
systemctl enable mariadb
Bây giờ hãy chạy các lệnh sau để bảo mật cài đặt MariaDB của bạn.
Mã:
mysql_secure_installation
Lệnh trên sẽ chạy một tập lệnh để bảo mật cài đặt MariaDB mới. Tập lệnh sẽ yêu cầu mật khẩu người dùng root hiện tại, chúng tôi vừa cài đặt MariaDB, mật khẩu root chưa được đặt, chỉ cần nhấn enter để tiếp tục.

Tập lệnh sẽ hỏi bạn có muốn đặt mật khẩu root cho cài đặt MariaDB của mình không, hãy chọn y và đặt mật khẩu mạnh cho cài đặt. Hầu hết các câu hỏi đều tự giải thích và bạn nên trả lời có hoặc có cho tất cả các câu hỏi. Đầu ra sẽ trông như bên dưới.

Để tạo cơ sở dữ liệu, trước tiên chúng ta cần đăng nhập vào dòng lệnh MySQL. Chạy lệnh sau để thực hiện tương tự.
Mã:
mysql -u root -p
Lệnh trên sẽ đăng nhập vào shell MySQL của người dùng root, lệnh sẽ nhắc nhập mật khẩu của người dùng root. Cung cấp mật khẩu để đăng nhập. Bây giờ hãy chạy truy vấn sau để tạo cơ sở dữ liệu mới cho cài đặt Mahara của bạn.
Mã:
CREATE DATABASE mahara_data CHARACTER SET UTF8;
Truy vấn trên sẽ tạo một cơ sở dữ liệu mới có tên là mahara_data. Đảm bảo rằng bạn sử dụng dấu chấm phẩy ở cuối mỗi truy vấn vì truy vấn luôn kết thúc bằng dấu chấm phẩy.

Để tạo người dùng cơ sở dữ liệu mới, hãy chạy truy vấn sau.
Mã:
CREATE USER 'mahara_user'@'localhost' IDENTIFIED BY 'StrongPassword';
Bây giờ hãy cung cấp tất cả các quyền cho người dùng cơ sở dữ liệu của bạn đối với cơ sở dữ liệu bạn đã tạo. Chạy lệnh sau.
Mã:
GRANT ALL PRIVILEGES ON mahara_data.* TO 'mahara_user'@'localhost';
Bây giờ hãy chạy lệnh sau để áp dụng ngay các thay đổi đối với các đặc quyền cơ sở dữ liệu.
Mã:
FLUSH PRIVILEGES;
Thoát khỏi dấu nhắc MySQL bằng lệnh sau.
Mã:
EXIT;

Bước 4 - Cài đặt và cấu hình Mahara​

Vì chúng ta đã chuẩn bị sẵn tất cả các phụ thuộc, bây giờ chúng ta có thể tải xuống gói cài đặt từ trang web Mahara.
Mã:
cd /var/www
Mã:
wget https://launchpad.net/mahara/17.04/17.04.2/+download/mahara-17.04.2.zip
Bạn luôn có thể tìm liên kết đến phiên bản mới nhất của ứng dụng trên trang tải xuống Mahara. Giải nén tệp lưu trữ bằng lệnh sau.
Mã:
unzip mahara*.zip
Nếu bạn không phải giải nén cài đặt, bạn có thể chạy yum -y install unzip. Đổi tên thư mục Mahara của bạn bằng cách sử dụng:
Mã:
mv mahara-*/ mahara/
Tạo một thư mục dữ liệu mới để lưu trữ dữ liệu phiên Mahara bằng cách chạy:
Mã:
mkdir /var/www/mahara/data
Sao chép tệp cấu hình Mahara bằng cách chạy:
Mã:
cp mahara/htdocs/config-dist.php mahara/htdocs/config.php
Mở tệp trong trình soạn thảo nano bằng cách chạy:
Mã:
nano mahara/htdocs/config.php
Bây giờ, hãy tìm các dòng sau.
Mã:
$cfg->dbtype = 'postgresql';$cfg->dbhost = 'localhost';$cfg->dbport = null; // Thay đổi nếu bạn đang sử dụng số cổng không chuẩn cho cơ sở dữ liệu của mình$cfg->dbname = '';$cfg->dbuser = '';$cfg->dbpass = '';
Thay đổi thông tin trên theo cơ sở dữ liệu bạn đã tạo. Trong trường hợp này, các dòng trên sẽ trông giống như hình dưới đây.
Mã:
$cfg->dbtype = 'mysql';$cfg->dbhost = 'localhost';$cfg->dbport = null; // Thay đổi nếu bạn đang sử dụng số cổng không chuẩn cho cơ sở dữ liệu của mình$cfg->dbname = 'mahara_data';$cfg->dbuser = 'mahara_user';$cfg->dbpass = 'StrongPassword';
Bây giờ hãy tìm dòng sau và thay đổi đường dẫn của thư mục dữ liệu.
Mã:
$cfg->dataroot = '/var/www/mahara/data';
Ngoài ra, hãy cung cấp một chuỗi ngẫu nhiên trong cấu hình bên dưới, nó được sử dụng để mã hóa dữ liệu người dùng.
Mã:
$cfg->passwordsaltmain = 'một số chuỗi ngẫu nhiên ở đây.';
Bây giờ hãy thay đổi bí mật URL thành null để bạn có thể chạy cron trực tiếp bằng trình duyệt.
Mã:
$cfg->urlsecret = null;
Lưu tệp và thoát khỏi trình chỉnh sửa.

Bước 5 - Cấu hình Quyền và Tường lửa​

Bây giờ bạn sẽ cần cung cấp quyền sở hữu ứng dụng cho người dùng máy chủ web bằng lệnh sau.
Mã:
chown -R apache:apache /var/www/mahara
Bạn cũng có thể cần cho phép lưu lượng HTTP trên cổng 80 đi qua tường lửa nếu bạn đang chạy tường lửa. Chạy các lệnh sau để thực hiện tương tự.
Mã:
firewall-cmd --zone=public --permanent --add-service=http
Mã:
firewall-cmd --reload
Để tạm thời vô hiệu hóa SELinux mà không cần khởi động lại máy chủ, hãy chạy lệnh sau.
Mã:
setenforce 0
Để vô hiệu hóa hoàn toàn SELinux, bạn sẽ cần chỉnh sửa tệp /etc/selinux/config.
Mã:
nano /etc/selinux/config
Tìm dòng sau:
Mã:
SELINUX=enforcing
Đổi thành:
Mã:
SELINUX=disabled
Bây giờ hãy tạo một máy chủ ảo cho ứng dụng Mahara. Chạy lệnh sau để thực hiện lệnh tương tự.
Mã:
nano /etc/httpd/conf.d/mahara.yourdomain.com.conf
Dán các dòng sau vào tệp.
Mã:
 ServerAdmin [emailprotected] DocumentRoot "/var/www/mahara/htdocs" ServerName mahara.yourdomain.com ServerAlias www.mahara.yourdomain.com  Options Indexes FollowSymLinks AllowOverride All Require all granted  ErrorLog "/var/log/httpd/mahara.yourdomain.com-error_log" CustomLog "/var/log/httpd/mahara.yourdomain.com-access_log" combined
Thay thế mahara.yourdomain.com bằng bất kỳ tên miền hoặc tên miền phụ nào bạn muốn sử dụng để truy cập ứng dụng. Lưu tệp và thoát khỏi trình chỉnh sửa. Chạy lệnh sau để khởi động lại máy chủ Apache của bạn.
Mã:
systemctl restart httpd
Bây giờ hãy hoàn tất quá trình cài đặt bằng trình duyệt web, hãy truy cập vào liên kết sau.
Mã:
http://mahara.yourdomain.com
Bạn sẽ được chào đón bằng trang sau.



Nhấp vào nút Cài đặt Mahara để tiếp tục.



Ở giao diện tiếp theo, Mahara sẽ viết cơ sở dữ liệu và cài đặt các mô-đun cần thiết để bạn bắt đầu. Sau khi hoàn tất, bạn có thể nhấp vào liên kết Tiếp tục để tiếp tục.



Ở giao diện tiếp theo, bạn sẽ được yêu cầu đặt mật khẩu cho bảng điều khiển Quản trị viên.



Cuối cùng, bạn sẽ được đưa đến bảng điều khiển quản trị, trông giống như hình dưới đây.

Kết luận​

Quá trình cài đặt Mahara đã hoàn tất, bạn có thể sử dụng Mahara để dễ dàng tạo một trang web đẹp mắt cho mục đích cá nhân hoặc thương mại.
 
Back
Bên trên