Install Tiki Wiki CMS Groupware on CentOS 7

Updated on September 6, 2019
Install Tiki Wiki CMS Groupware on CentOS 7 header image

Introduction

Tiki Wiki CMS Groupware, also known as Tiki, is a free and open source wiki content management system. Tiki's features include wiki pages, blogs, forums, and file and image galleries.

This tutorial assumes that you have already setup a Vultr Cloud Compute instance with CentOS 7 and have root access.

##Install Apache, MySQL, and PHP Tiki runs on top of the LAMP stack. Before installing Tiki, you will need to install Apache, MySQL, and PHP.

Install the Apache webserver.

sudo yum install httpd -y
sudo systemctl enable httpd.service
sudo systemctl start httpd.service

Open ports 80 (HTTP) and 443 (HTTPS) through the firewall to be able to access the server from the internet.

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

Add the MySQL repository and install MySQL.

sudo wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
sudo yum install mysql-server -y

Complete the MySQL installation.

sudo systemctl enable mysqld.service
sudo systemctl start mysqld.service
sudo mysql_secure_installation

When asked for the current password, press enter. During the installation, you will be asked to enter a root password. Enter a safe password. This will be the MySQL root password.

Set root password? [Y/n] Y    
New password: <Your Password>
Re-enter new password: <Your 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

Add the Remi repository and install PHP 7.2 and the PHP modules required by Tiki.

sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install yum-utils
sudo yum-config-manager --enable remi-php72
sudo yum install php-curl php libapache2-mod-php php-common php-sqlite3 php-intl php-mbstring php-xmlrpc php-mysql php-gd php-xml php-cli php-zip -y

##Create a MySQL database for Tiki Tiki requires a MySQL database. Login to the MySQL console.

sudo mysql -u root -p

When prompted for a password, enter the MySQL root password you set in Step 1. Once you are logged in, create a new database for Tiki.

mysql>CREATE DATABASE tiki;

Create a new MySQL user and grant it privileges to the newly created database. You can replace username and password with the username and password of your choice.

mysql>GRANT ALL PRIVILEGES ON tiki.* TO 'username'@'localhost' IDENTIFIED BY 'password';
mysql>FLUSH PRIVILEGES;

Exit the MySQL console.

mysql>exit

##Download & Install Tiki Download the latest version of Tiki.

sudo cd /var/www/html
sudo wget https://sourceforge.net/projects/tikiwiki/files/latest/download

Unzip the downloaded archive and move the files to the root of the Apache webserver.

sudo yum install unzip -y
sudo unzip download
sudo mv ./tiki-19.1/* . && rm -rf download && rm -rf tiki-19.1

Set the appropriate file permissions.

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

##Configure Apache for Tiki

Create an Apache virtual hosts configuration file.

sudo vi /etc/httpd/conf.d/vhost.conf

Add the following snippet to the file, replacing example.com with your own domain name.

<VirtualHost *:80>
     DocumentRoot /var/www/html/
     ServerName example.com
     <Directory /var/www/html/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>
     ErrorLog /var/log/httpd/error.log
     CustomLog /var/log/httpd/access.log combined
</VirtualHost>

Restart the Apache server.

 sudo systemctl restart httpd.service

##Complete the Tiki Installation Open a browser window on your computer and navigate to your domain name. You will see the Tiki web-based installer. Proceed through the installer and enter the MySQL database details that you created earlier when prompted.