Mahara je open source e-portfoliový systém. Může být také použit jako platforma pro sociální sítě. Mahara je napsána v PHP a k ukládání dat používá databázový server PostgreSQL nebo MySQL. Mahara můžete použít k vytvoření svého personalizovaného multimediálního portfolia a ke spolupráci s ostatními.
V tomto tutoriálu nainstalujeme Mahara na server CentOS 7.
Předpoklad
- Minimální server CentOS 7
- Oprávnění uživatele root
Krok 1 – Instalace Apache
Před instalací jakéhokoli balíčku se doporučuje aktualizovat server, aby byly aktualizovány stávající balíčky a úložiště.
yum -y update
Jakmile budete mít svůj systém aktualizován, můžete pokračovat v instalaci webového serveru Apache.
yum -y install httpd
Nyní spusťte webový server Apache a povolte jeho spuštění při bootování pomocí následujícího příkazu.
systemctl start httpd
systemctl enable httpd
Krok 2 – Instalace PHP
Mahara podporuje všechny verze PHP vyšší než 5.3. Ale v tomto tutoriálu nainstalujeme PHP 7.1, protože PHP v5.3 dosáhlo konce své životnosti. Instalace nejnovější verze PHP zajistí maximální bezpečnost a výkon aplikace.
Výchozí úložiště YUM CentOS neobsahuje PHP 7.1, proto budete muset do svého systému přidat úložiště Webtatic. Nainstalujte vydání EPEL:
yum -y install epel-release
yum -y update
Zadejte příkazy pro instalaci úložiště Webtatic.
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y update
Chcete-li nainstalovat PHP 7.1 spolu se všemi požadovanými závislostmi, zadejte následující příkaz.
yum -y install php71w php71w-mysqli php71w-gd php71w-cli php71w-mcrypt php71w-mbstring php71w-dom
Chcete-li zkontrolovat, zda je PHP úspěšně nainstalováno, můžete spustit:
php -v
Měli byste dostat výstup podobný tomuto.
[[email protected] ~]# 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
Nyní budete muset nakonfigurovat několik konfigurací v PHP. Otevřete konfigurační soubor PHP, php.ini, pomocí svého oblíbeného textového editoru.
nano /etc/php.ini
Najděte následující řádek a odkomentujte řádek a nastavte časové pásmo podle vašeho regionu. Například:
[Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone date.timezone = Asia/Kolkata
Dále vyhledejte následující řádek:
;session.entropy_length = 32
Odkomentujte řádek a vyhledejte následující řádek:
post_max_size = 8M
Změňte hodnotu z 8M na 999M. Uložte soubor a ukončete editor.
Krok 3 – Instalace MariaDB
MariaDB je fork databáze MySQL. Chcete-li nainstalovat MariaDB na váš server, spusťte:
yum -y install mariadb mariadb-server
Spuštěním následujících příkazů spusťte MariaDB a povolte její spuštění při spouštění.
systemctl start mariadb
systemctl enable mariadb
Now run the following commands to secure your MariaDB installation.
mysql_secure_installation
Výše uvedený příkaz spustí skript pro zabezpečení nové instalace MariaDB. Skript se zeptá na stávající heslo uživatele root, právě jsme nainstalovali MariaDB, heslo root není nastaveno, stačí stisknout enter a pokračovat dále.
Skript se vás zeptá, zda chcete nastavit heslo uživatele root pro vaši instalaci MariaDB, zvolte y a nastavte silné heslo pro instalaci. Většina otázek je samovysvětlujících a na všechny otázky byste měli odpovědět ano nebo y. Výstup bude vypadat následovně.
Pro vytvoření databáze se budeme muset nejprve přihlásit do příkazového řádku MySQL. Pro totéž spusťte následující příkaz.
mysql -u root -p
Výše uvedený příkaz se přihlásí do prostředí MySQL uživatele root a vyzve uživatele root k zadání hesla. Zadejte heslo pro přihlášení. Nyní spusťte následující dotaz k vytvoření nové databáze pro vaši instalaci Mahara.
CREATE DATABASE mahara_data CHARACTER SET UTF8;
Výše uvedený dotaz vytvoří novou databázi s názvem mahara_data. Ujistěte se, že na konci každého dotazu používáte středník, protože dotaz vždy končí středníkem.
Chcete-li vytvořit nového uživatele databáze, spusťte následující dotaz.
CREATE USER 'mahara_user'@'localhost' IDENTIFIED BY 'StrongPassword';
Nyní poskytněte uživateli vaší databáze všechna oprávnění k databázi, kterou jste vytvořili. Spusťte následující příkaz.
GRANT ALL PRIVILEGES ON mahara_data.* TO 'mahara_user'@'localhost';
Nyní spusťte následující příkaz, abyste okamžitě použili změny oprávnění k databázi.
FLUSH PRIVILEGES;
Ukončete výzvu MySQL pomocí následujícího příkazu.
EXIT;
Krok 4 – Instalace a konfigurace Mahara
Protože máme připraveny všechny závislosti, můžeme si nyní stáhnout instalační balíček z webu Mahara.
cd /var/www
wget https://launchpad.net/mahara/17.04/17.04.2/+download/mahara-17.04.2.zip
Odkaz na nejnovější verzi aplikace vždy najdete na stránce stahování Mahara. Rozbalte archiv pomocí následujícího příkazu.
unzip mahara*.zip
Pokud nemusíte rozbalovat nainstalované, můžete spustit yum -y install unzip. Přejmenujte svou složku Mahara pomocí:
mv mahara-*/ mahara/
Vytvořte nový datový adresář pro ukládání dat relace Mahara spuštěním:
mkdir /var/www/mahara/data
Zkopírujte konfigurační soubor Mahara spuštěním:
cp mahara/htdocs/config-dist.php mahara/htdocs/config.php
Otevřete soubor v nano editoru spuštěním:
nano mahara/htdocs/config.php
Nyní najděte následující řádky.
$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 = '';
Změňte výše uvedené informace podle vámi vytvořené databáze. V tomto případě by výše uvedené řádky měly vypadat následovně.
$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';
Nyní najděte následující řádek a změňte cestu k datovému adresáři.
$cfg->dataroot = '/var/www/mahara/data';
V konfiguraci níže uveďte také náhodný řetězec, který se používá k šifrování uživatelských dat.
$cfg->passwordsaltmain = 'some random string here.';
Nyní změňte tajnou adresu URL na hodnotu null, abyste mohli spouštět cron přímo pomocí prohlížeče.
$cfg->urlsecret = null;
Uložte soubor a ukončete editor.
Krok 5 – Konfigurace oprávnění a brány firewall
Nyní budete muset zadat vlastnictví aplikace uživateli webového serveru pomocí následujícího příkazu.
chown -R apache:apache /var/www/mahara
Možná budete také muset povolit provoz HTTP na portu 80 přes bránu firewall, pokud ji používáte. Pro totéž spusťte následující příkazy.
firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload
Chcete-li dočasně zakázat SELinux bez restartování serveru, spusťte následující příkaz.
setenforce 0
Chcete-li úplně deaktivovat SELinux, budete muset upravit soubor /etc/selinux/config.
nano /etc/selinux/config
Najděte následující řádek:
SELINUX=enforcing
Změňte jej na:
SELINUX=disabled
Nyní vytvořte virtuálního hostitele pro aplikaci Mahara. Pro totéž spusťte následující příkaz.
nano /etc/httpd/conf.d/mahara.yourdomain.com.conf
Vložte následující řádky do souboru.
<VirtualHost *:80> ServerAdmin [email protected] 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>
Nahraďte mahara.yourdomain.com jakoukoli doménou nebo subdoménou, kterou chcete použít pro přístup k aplikaci. Uložte soubor a ukončete editor. Spuštěním následujícího příkazu restartujte server Apache.
systemctl restart httpd
Nyní dokončete instalaci pomocí webového prohlížeče, přejděte na následující odkaz.
http://mahara.yourdomain.com
Uvítá vás následující stránka.
Klikněte na Install Mahara pokračujte dále.
Na dalším rozhraní Mahara zapíše databázi a nainstaluje potřebné moduly, abyste mohli začít. Po dokončení můžete kliknout na Pokračovat odkaz pro pokračování.
V dalším rozhraní budete požádáni o nastavení hesla pro řídicí panel správce.
Nakonec budete přesměrováni na administrační panel, který bude vypadat jako níže.
Závěr
Instalace Mahara je nyní dokončena, můžete použít Mahara ke snadnému vytvoření krásné webové stránky pro osobní nebo komerční účely.