How to Install Mahara on Fedora Server Latest?

In this tutorial, we will learn how to install Mahara, an open-source e-portfolio and social networking web application on Fedora Server Latest.

Prerequisites

Step 1: Update Your System

Before we begin, ensure the system is up to date by running the following command:

sudo dnf update -y

Step 2: Install Apache Web Server

Mahara web application requires a webserver to run. We will use Apache, which is the most commonly used web server. To install Apache, run the following command:

sudo dnf install httpd -y

After installing Apache, start and enable it to run at system boot time with the following command:

sudo systemctl start httpd
sudo systemctl enable httpd

Confirm the Apache web server is working by opening a web browser and navigating to http://localhost/. You should see the Apache test page.

Step 3: Install MariaDB Database Server

Mahara stores its data in a database. We will use the MariaDB database server. To install MariaDB, run the following command:

sudo dnf install mariadb-server mariadb -y

After installing MariaDB, start and enable it to run at system boot time with the following command:

sudo systemctl start mariadb
sudo systemctl enable mariadb

Then, run the mysql_secure_installation script to set the root password, remove anonymous users, restrict root user access to the local machine, and remove test databases:

sudo mysql_secure_installation

Step 4: Install PHP and Required Extensions

Mahara is written in PHP and requires specific PHP extensions. To install PHP and its required extensions, run the following command:

sudo dnf install php php-mysqlnd php-gd php-curl php-xmlrpc php-xml php-mbstring -y

After installing PHP and its extensions, restart the Apache web server to apply the changes:

sudo systemctl restart httpd

Step 5: Download and Install Mahara

Download the latest version of Mahara from their official website:

cd /tmp
wget https://launchpad.net/mahara/21.04/21.04.2/+download/mahara-21.04.2.tar.gz

After downloading Mahara, extract it to the /var/www/html directory using the following command:

sudo tar -xzf /tmp/mahara-21.04.2.tar.gz -C /var/www/html/

Then, set the appropriate ownership and permissions with the following command:

sudo chown -R apache:apache /var/www/html/mahara
sudo chmod -R 755 /var/www/html/mahara

Step 6: Configure Apache for Mahara

To configure Apache for Mahara, create a new virtual host configuration file as follows:

sudo nano /etc/httpd/conf.d/mahara.conf

And paste the following configuration:

<VirtualHost *:80>
    ServerAdmin admin@example.com
    DocumentRoot /var/www/html/mahara
    ServerName example.com
    ServerAlias www.example.com

    <Directory /var/www/html/mahara>
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /var/log/httpd/mahara_error.log
    CustomLog /var/log/httpd/mahara_access.log combined
</VirtualHost>

Remember to replace "example.com" with your domain name, save and exit the file.

Next, restart the Apache web server to apply the changes:

sudo systemctl restart httpd

Step 7: Configure Database for Mahara

Create a new database and user for Mahara using the following commands:

sudo mysql -u root -p
CREATE DATABASE maharadb;
GRANT ALL PRIVILEGES ON maharadb.* TO 'maharauser'@'localhost' IDENTIFIED BY 'yourpassword';
FLUSH PRIVILEGES;
exit;

Remember to replace "maharadb", "maharauser" and "yourpassword" with your desired database name, username, and password respectively.

Step 8: Install Mahara from the Web Interface

Open a web browser and navigate to http://your_domain_or_IP/mahara/admin/ and follow the installation wizard to complete the installation.

You will be asked to enter your database details, administrator details, site settings, and email settings.

Once the installation is complete, you can log in to your Mahara application by going to http://your_domain_or_IP/mahara/.

Conclusion

In this tutorial, we have learned how to install Mahara, an e-portfolio and social networking web application on Fedora Server Latest. We have also learned how to configure Apache web server, MariaDB database server, and PHP with the required extensions. Finally, we have installed Mahara using the web interface and created a new database and user for Mahara.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!

Alternatively, for the best virtual desktop, try Shells!