X
    Categories Tutorials

How to Install Zikula on Ubuntu 16.04

In this tutorial we are going to provide you with step by step instructions on how to install Zikula on an Ubuntu 16.04 VPS

. Zikula is an open-source web application framework written in PHP.

At the time of writing this tutorial, the latest stable version of Zikula is 2.0.1 and it requires:

  • PHP 5.5.9 or higher (preferably the latest), with mbstring, JSON, curl, Intl, mysql and GD PHP extensions enabled.
  • MySQL 5, MariaDB 5 or later
  • Apache web server 2.0 or higher compiled with mod_rewrite module and AllowOverride set to ‘All’ (please note, the default setting for AllowOverride in Apache 2.3.9 and higher is ‘None’).

This install guide assumes that Apache is already installed and configured on your virtual server.

Let’s start with the installation.

Make sure your server OS packages are fully up-to-date:

apt-get update 
apt-get upgrade

Install the required packages:

apt-get install php7.0-curl php7.0-gd php7.0-mbstring php7.0-mysql php7.0-intl

Enable Apache rewrite module if it is not already done so:

a2enmod rewrite

Restart the Apache service for the changes to take effect:

service apache2 restart

Install Zikula

Download the latest version of Zikula available at https://github.com/zikula/core/releases to the /opt/ directory on the server:

cd /opt/
wget https://github.com/zikula/core/releases/download/2.0.1/Zikula_Core-2.0.1.zip
unzip Zikula_Core-2.0.1.zip
mv 2.0 /var/www/html/zikula

All files have to be readable by the web server, so set a proper ownership:

chown www-data:www-data -R /var/www/html/zikula

Create a new MySQL database and user:

mysql -u root -p
mysql> SET GLOBAL sql_mode='';
mysql> CREATE DATABASE zikuladb;
mysql> CREATE USER 'zikulauser'@'localhost' IDENTIFIED BY 'y0uR-pa5sW0rd';
mysql> GRANT ALL PRIVILEGES ON zikuladb.* TO 'zikulauser'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit

Do not forget to replace ‘y0uR-pa5sW0rd’ with a strong password.

Create a new virtual host directive in Apache. For example, create a new Apache configuration file named ‘zikula.conf’ on your virtual server:

touch /etc/apache2/sites-available/zikula.conf
ln -s /etc/apache2/sites-available/zikula.conf /etc/apache2/sites-enabled/zikula.conf
vi /etc/apache2/sites-available/zikula.conf

Then, add the following lines:

<VirtualHost *:80>
ServerAdmin admin@your-domain.com
DocumentRoot /var/www/html/zikula/
ServerName your-domain.com
ServerAlias www.your-domain.com
<Directory /var/www/html/zikula/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/your-domain.com-error_log
CustomLog /var/log/apache2/your-domain.com-access_log common
</VirtualHost>

Remove the 000-default.conf file:

rm /etc/apache2/sites-enabled/000-default.conf

Restart the Apache web server for the changes to take effect:

service apache2 restart

Open http://your-domain.com in your favorite web browser and follow the easy instructions on the install screen inserting the necessary information as requested:

Database type: MySQL
Storage Engine: InnoDB
Database Host: localhost
Database Username: zikulauser
Database Password: y0uR-pa5sW0rd   // change this password with your actual password
Database Name: zikuladb

On the next page, create a new Zikula administrator account.

Click ‘Begin Installer’.

That is it. Zikula has been installed on your server.

Log in to the Zikula administration back-end and start creating new content, install new extensions, add new users and so on…


Of course you don’t have to do any of this if you use one of our Linux VPS Hosting services, in which case you can simply ask our expert Linux admins to install Zikula for you. They are available 24×7 and will take care of your request immediately.

PS. If you enjoy reading our blog, feel free to share it on social networks using the shortcuts below, or simply leave a comment.

admin :