How to install elgg on CentOS 8

Introduction

Elgg is an award-winning open source social networking engine that provides a robust framework on which to build all kinds of social environments, from a campus wide social network for your university, school or college or an internal collaborative platform for your organization through to a brand-building communications tool for your company and its clients.

In this installation guide, we will show you how to install elgg.

Just follow the steps below:

  • Install apache web server and enable it.
dnf install httpd -y
systemctl enable httpd.service
systemctl start httpd.service
  • Open ports 80 and 443 ports to be able to access the server.
firewall-cmd --permanent --zone=public --add-service=http 
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
  • Install MySQL-Server.
dnf install mysql-server -y
  • Complete the MySQL secure installation.
sudo mysql_secure_installation
  • You will be asked to enter a root password. Enter a safe password. then follow the answers below:
Set root password? [Y/n] Y    
New password:    #enter a strong password
Re-enter new password: 
Remove anonymous users? [Y/N] Y
Disallow root login remotely? [Y/N] Y
Remove test database and access to it? [Y/N] Y
Reload privilege tables now? [Y/N] Y
  • Create MySQL database for Elgg with logging into MySQL console by running the command below:
mysql -u root -p
  • Then create a mysql database for elgg by running mysql commands below:
mysql> CREATE DATABASE elgg;
mysql> CREATE USER 'unixcop'@'localhost' IDENTIFIED BY 'unixcoppassword';
mysql> GRANT ALL PRIVILEGES ON elgg.* TO 'unixcop'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> \q;

Note: You can change the database name “elgg” and db_user “unixcop” with any names you want.

  • Install php and required packages for it.
dnf install -y php php-common php-pgsql php-gd php-json php-pdo php-mbstring php-xml php-cli php-pear  php-pecl-apcu php-mysqlnd unzip
  • Change the directory to /var/www/html and download the latest version of Elgg.
cd /var/www/html
wget https://elgg.org/about/getelgg?forward=elgg-4.0.0.zip

Note: You can check updates to download the latest version of elgg from the official website

  • Unzip the downloaded archive.
unzip getelgg\?forward\=elgg-4.0.0.zip
  • Move the files to the root of the Apache server.
mv ./elgg-4.0.0/* .
  • Create a directory for Elgg .
mkdir -p /var/www/html/data

Set suitable file permissions for elgg files.

chown -R apache:apache /var/www/html/
chmod -R 755 /var/www/html/
chown -R apache:apache /var/www/html/elgg-config
  • Change the enforcing of SELinux to permissive with command below:
setenforce 0
  • Configure Apache for Elgg by creating an Apache virtual host.
vim /etc/httpd/conf.d/vhost.conf
  • Next add the following then save and quit.
<VirtualHost *:80>
     DocumentRoot /var/www/html/
     ServerName elgg.unixcop.com
     <Directory /var/www/html/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>
     ErrorLog /var/log/httpd/elgg_error.log
     CustomLog /var/log/httpd/elgg_access.log combined
</VirtualHost>
  • Restart the Apache with command.
systemctl restart httpd.service
  • Complete the Elgg Installation from the elgg-web-based by opening any browser then enter your server IP:

http://IP_address

  • Click Next and enter the info of the Database details and its credentials.
  • Also click Next and enter the required details as shown in screenshots.
  • Create your Admin Account with entering the required details then click next.
  • Finally, you will see that your admin account has been created successfully then Click on Go to Site button to access your site.

That is all, Thank you !!!

Qadry
unixcop Admin

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest articles

You might also likeRELATED

How to Count Number of Files and Sub-directories inside a Directory

Hi guys, In this article we will show you how to count the number of files and sub-directories in a directory using a tree command. Count number...

Find Top 10 IP Addresses Accessing Your Apache Web Server

In this post, you will learn how to Find Top 10 IP Addresses Accessing Your Apache Web Server- The monitoring access to your web server...

How to Install MongoDB in CentOS 8

Introduction MongoDB is a source-available cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with optional schemas. MongoDB is developed by MongoDB Inc. and licensed under the Server Side Public License (SSPL). MongoDB is a...