How to install Hesk on Ubuntu 16.04

Today we will show you how to install Hesk on Ubuntu 16.04, using Apache web-server and MySQL database. Hesk is Free PHP Help Desk Software that runs with a MySQL database. It allows you to setup a web based ticket support system (helpdesk) for your website. Once the Help Desk Software is installed your customers will be able to submit support tickets and staff will have an easy-to-use web interface to manage customer support requests. It is fairly easy to install Hesk on an Ubuntu 16.04 VPS. The installation process should take about 5-10 minutes if you follow the very easy steps described below.

At the time of writing this tutorial, Hesk 2.6.8. is the latest stable version available and it requires:

– Apache web server;
– PHP (version 5.3.0 or higher) along with the mbstring, curl, zip, gd and mcrypt extensions. They are most generally active by default on a standard php installation.
– MySQL(version 5.0.7 or higher) installed on your Linux VPS;

INSTRUCTIONS:

Login to your VPS via SSH

ssh user@vps_IP

Update the system

[user]$ sudo apt-get update && sudo apt-get -y upgrade

Install MariaDB 10.0

To install MariaDB, run the following command:

[user]$ sudo apt-get install -y mariadb-server

Next, we need to create a database for our Hesk installation.

[user]$ mysql -u root -p

MariaDB [(none)]> CREATE DATABASE hesk;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON hesk.* TO 'heskuser'@'localhost' IDENTIFIED BY 'your-password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

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

Install Apache2 web server

[user]$ sudo apt-get install apache2

Install PHP and required PHP modules

To install the latest stable version of PHP version 7 and all necessary modules, run:

[user]$ sudo apt-get install php7.0 libapache2-mod-php7.0 php7.0-mbstring php7.0-curl php7.0-zip php7.0-gd php7.0-mysql php7.0-mcrypt

Enable the Apache2 rewrite module if it is not already done:

[user]$ sudo a2enmod rewrite

In order to activate the new configuration, restart the Apache web server using the following command:

[user]$ sudo service apache2 restart

Go to Hesk official website and download the latest release of their application. Once the zip archive is downloaded, upload it to your server via FTP or sFTP.

Next, create a new directory for the Hesk files in the document root directory on your server and unpack the downloaded ZIP archive

[user]$ sudo mkdir /var/www/html/hesk
[user]$ sudo unzip hesk268.zip -d /var/www/html/hesk

All files have to be readable by the web server, so we need to set a proper ownership
[user]$ sudo chown www-data:www-data -R /var/www/html/hesk/

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

[user]$ sudo touch /etc/apache2/sites-available/hesk.conf
[user]$ sudo ln -s /etc/apache2/sites-available/hesk.conf /etc/apache2/sites-enabled/hesk.conf
[user]$ sudo nano /etc/apache2/sites-available/hesk.conf

Then, add the following lines:

<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/hesk/
ServerName your-domain.com
ServerAlias www.your-domain.com
<Directory /var/www/html/hesk/>
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>

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

[user]$ sudo service apache2 restart

Open your favorite web browser, navigate to http://your-domain.com/install and if you configured everything correctly the Hesk installer should be starting. You should follow the easy instructions on the install screen inserting the necessary information as requested.

That is it. The Hesk installation is now complete.


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

PS. If you liked this post please share it with your friends on the social networks using the buttons on the left or simply leave a reply below. Thanks.

Leave a Comment