如何在CentOS 7上安装Mahara ePortfolio系统

Mahara是一个开源的电子投资组合系统。 它也可以用作社交网络平台。 Mahara是用PHP编写的,它使用PostgreSQL或MySQL数据库服务器来存储它的数据。 您可以使用Mahara创建您的个性化多媒体组合并与他人协作。

在本教程中,我们将在CentOS 7服务器上安装Mahara。

条件

  • 最小CentOS 7服务器
  • 根权限

第1步 - 安装Apache

建议在安装任何软件包之前更新服务器,以便更新现有软件包和存储库。

yum -y update

更新系统后,您可以继续安装Apache Web服务器。

yum -y install httpd

现在启动Apache Web服务器,并使用以下命令使其在启动时启动。

systemctl start httpd
systemctl enable httpd

第2步 - 安装PHP

Mahara支持所有版本的PHP大于5.3。 但是在本教程中,我们将安装PHP 7.1,因为PHP v5.3已经到了终点。 安装最新版本的PHP将确保应用程序的最大安全性和性能。

CentOS的默认YUM存储库没有包含PHP 7.1,因此您需要在系统中添加Webtatic存储库。 安装EPEL版本:

yum -y install epel-release
yum -y update

键入安装Webtatic存储库的命令。

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y update

键入以下命令以安装PHP 7.1以及所有必需的依赖关系。

yum -y install php71w php71w-mysqli php71w-gd php71w-cli php71w-mcrypt php71w-mbstring php71w-dom

要检查PHP是否安装成功,可以运行:

php -v

你应该得到类似的输出。

[root@liptan-pc ~]# php -v
PHP 7.1.6 (cli) (built: Jun 10 2017 07:28:42) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies

现在您需要在PHP中配置几个配置。 使用您最喜欢的文本编辑器打开PHP配置文件php.ini

nano /etc/php.ini

找到以下行并取消注释行,并根据您所在的地区设置时区。 例如:

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Kolkata

此外,搜索以下行:

;session.entropy_length = 32

取消注释行并搜索以下行:

post_max_size = 8M

将值从8M更改为999M。 保存文件并退出编辑器。

第3步 - 安装MariaDB

MariaDB是MySQL数据库的一个分支。 要在服务器上安装MariaDB,请运行:

yum -y install mariadb mariadb-server

运行以下命令启动MariaDB并使其在引导时启动。

systemctl start mariadb
systemctl enable mariadb
Now run the following commands to secure your MariaDB installation.
mysql_secure_installation

上述命令将运行一个脚本来保护新鲜的MariaDB安装。 该脚本将要求现有的root用户密码,我们刚刚安装了MariaDB,root密码未设置,只需按Enter继续。

该脚本会询问您是否要为您的MariaDB安装设置root密码,然后选择y并为安装设置一个强密码。 大部分问题是不言自明的,你应该回答所有问题的答案。 输出如下图所示。

要创建数据库,我们需要先登录到MySQL命令行。 运行以下命令相同。

mysql -u root -p

上述命令将登录到root用户的MySQL shell,它将提示输入root用户的密码。 提供登录密码。现在运行以下查询为您的Mahara安装创建一个新的数据库。

CREATE DATABASE mahara_data CHARACTER SET UTF8;

上述查询将创建一个名为mahara_data的新数据库。 请确保在每个查询结尾使用分号,因为查询始终以分号结尾。

要创建新的数据库用户,请运行以下查询。

CREATE USER 'mahara_user'@'localhost' IDENTIFIED BY 'StrongPassword';

现在通过您创建的数据库为数据库用户提供所有权限。 运行以下命令。

GRANT ALL PRIVILEGES ON mahara_data.* TO 'mahara_user'@'localhost';

现在运行以下命令立即对数据库权限应用更改。

FLUSH PRIVILEGES;

使用以下命令退出MySQL提示符。

EXIT;

第4步 - 安装和配置Mahara

由于我们已经准备好所有的依赖项,我们现在可以从Mahara网站下载安装包。

cd /var/www
wget https://launchpad.net/mahara/17.04/17.04.2/+download/mahara-17.04.2.zip

您可以随时在Mahara下载页面找到该应用程序的最新版本的链接。 使用以下命令提取存档。

unzip mahara*.zip

如果不需要解压缩安装,可以运行yum -y install unzip 。 重命名您的Mahara文件夹:

mv mahara-*/ mahara/

创建一个新的数据目录来存储Mahara会话数据,方法是运行:

mkdir /var/www/mahara/data

运行以下命令复制Mahara配置文件:

cp mahara/htdocs/config-dist.php mahara/htdocs/config.php

在nano编辑器中打开文件,方法是运行:

nano mahara/htdocs/config.php

现在,找到以下几行。

$cfg->dbtype   = 'postgresql';
$cfg->dbhost   = 'localhost';
$cfg->dbport   = null; // Change if you are using a non-standard port number for your database
$cfg->dbname   = '';
$cfg->dbuser   = '';
$cfg->dbpass   = '';

根据您创建的数据库更改上述信息。 在这种情况下,上述行应如下所示。

$cfg->dbtype   = 'mysql';
$cfg->dbhost   = 'localhost';
$cfg->dbport   = null; // Change if you are using a non-standard port number for your database
$cfg->dbname   = 'mahara_data';
$cfg->dbuser   = 'mahara_user';
$cfg->dbpass   = 'StrongPassword';

现在找到以下行并更改数据目录的路径。

$cfg->dataroot = '/var/www/mahara/data';

在下面的配置中还提供一个随机字符串,用于加密用户数据。

$cfg->passwordsaltmain = 'some random string here.';

现在将URL密码更改为null,以便您可以使用浏览器直接运行cron。

$cfg->urlsecret = null;

保存文件并退出编辑器。

第5步 - 配置权限和防火墙

现在,您将需要使用以下命令将应用程序的所有权提供给Web服务器用户。

chown -R apache:apache /var/www/mahara

如果您正在运行,您可能还需要通过防火墙允许端口80上的HTTP流量。 运行以下命令相同。

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload

要临时禁用SELinux而不重新启动服务器,请运行以下命令。

setenforce 0

要完全禁用SELinux,您需要编辑/ etc / selinux / config文件。

nano /etc/selinux/config

找到以下行:

SELINUX=enforcing

将其更改为:

SELINUX=disabled

现在为Mahara应用程序创建一个虚拟主机。 运行以下命令相同。

nano /etc/httpd/conf.d/mahara.yourdomain.com.conf

将以下行粘贴到文件中。

<VirtualHost *:80>
    ServerAdmin me@liptanbiswas.com
    DocumentRoot "/var/www/mahara/htdocs"
    ServerName mahara.yourdomain.com
    ServerAlias www.mahara.yourdomain.com
    <Directory "/var/www/mahara/htdocs">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
    ErrorLog "/var/log/httpd/mahara.yourdomain.com-error_log"
    CustomLog "/var/log/httpd/mahara.yourdomain.com-access_log" combined
</VirtualHost>

mahara.yourdomain.com替换为要用于访问应用程序的任何域或子域。 保存文件并退出编辑器。 运行以下命令重新启动Apache服务器。

systemctl restart httpd

现在使用Web浏览器完成安装,请转到以下链接。

http://mahara.yourdomain.com

您将受到以下页面的欢迎。

点击安装Mahara按钮进一步。

在接下来的界面上,Mahara将会写入数据库,并安装必要的模块,让你开始。 完成后,您可以点击继续链接进一步。

在下一个界面中,系统将要求您为管理员信息中心设置密码。

最后,您将被带到管理信息中心,如下所示。

结论

Mahara的安装现已完成,您可以使用Mahara轻松创建一个美丽的网站,用于个人或商业目的。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏