Installation Of UVdesk with Nginx on Ubuntu 16.04

Updated 13 June 2023

Facebook Linkedin


UVdesk is a fully functional open-source web-based ticketing system built on famous technologies such as Symfony/PHP and backbone.javascript framework.

It’s a pack of incredible features for handling customer queries by using various tools & tactics that saves time and agent workload.


Drafting out the feature list of UVdesk Open Source helpdesk:

  • Translation Support (Multilingual)
  • Unlimited Agents, Group, Team, Customers, Tickets etc
  • Agent Privileges
  • No limit on the number of Mailbox/Email integration
  • Saved Replies for common queries
  • Filter based on ticket status, Id, agent, customer, etc
  • Block Spam
  • Standard automated workflows
  • Notes for agents
  • Custom branding
  • Change logo & favicon
  • Broadcasting message
  • Ticket Forwarding
  • Prepared Response
  • Email Notification
  • Effective search
  • User-Friendly Web Installer
  • Add multiple attachments
  • Powerful Knowledgebase/Faq (article, category & folder)
  • Ticket types, Multiple Tags
  • Email Templates

UVdesk Installation PrePrerequisites

Hardware Requirement

  • Processor: 1.60GHz or higher
  • RAM: 3GB or higher 

Software Requirement

  • Ubuntu 16.04
  • PHP 7.2 or higher
  • Composer: 1.6.5 or higher
  • IMAP extension
  • MailParse extension
  • Server: Nginx 
  • Database: MySQL

1). Install Nginx and MySQL

In this step, we will install Nginx and MySQL server from the Ubuntu repository.

Install Nginx

The very first we need to make sure that our repository information is up to date and then install Nginx

Step 1: Update Ubuntu repository:

Step 2: Then, install Nginx

Step 3: Now start Nginx with the following command:

Now the installation of the Nginx web server has been completed, check the Nginx service using the following command.

Now make sure all the services are running by checking the server port of the services:

Install MySQL

Step 1: Install MySQL using the apt command below:

Step 2: Now, start the MySQL service and enable it

Step 3: Now check the MySQL service using the following command:

During installation, you will be asked for the MySQL root password, make sure enter a secure MySQL password.

Now, the installation and configuration of MySQL database have been completed.

2). PHP and PHP-FPM Installation

In this step, we will install PHP 7.2 or 7.3 and all of those extensions and then configure PHP to run with Nginx web server.

Step 1: First run below command:


Install PHP-FPM 7

Step 1: Run below command

Step 2: Now, go to the PHP 7 directory and edit the php.ini file.

Step 3: Uncomment the cgi.fix_pathinfo line and change it’s value to 0.

Save the file and exit vim.

Step 4: Now restart php7.2-fpm and add it to start at the boot time:

Step 5: After that, Go to the Nginx virtual host directory and edit the default virtual host file with vim to work with Nginx web server.

Step 6: Uncomment the PHP 7 configuration line below:

Save and exit, then restart the webserver.

3). Install PHP Imap & Mailparse

UVdesk requires some PHP extension(Imap & Mailparse) for the installation. 

Mailparse Extension

Step 1: Run the below command:



If all is done, go to the php 7.2 or7.3 directory and edit the php.ini file.

Now, add “extension=mailparse.so” in the php.ini file of the PHP version you are using.

When you are finished editing your php.ini, you will need to restart your web server.

Step 2: Run the following command:


Step 1: Run the below command:


Check PHP version and Nginx by creating info.php file:

Open your web server URL in a Browser and visit the server IP address pointing to info.php


You will get information about your PHP configuration.

4). Create Database for UVdesk

Now, we will create a new database and MySQL user for UVdesk. Login to the MySQL with your MySQL root password.

Database MySQL login

Click on new button then enter the database name to create a new database as shown below:

Create new database

5). Download and Configure UVdesk

Step 1: Use the composer to set up your project by running the following command from your terminal:


Download the zip archive by using  below command:

Step 2: Extract the file:

6). Install UVdesk Using Web Installer Wizard

Step 1: Browse your installed helpdesk project and point it to the public folder

For example – http://domain/installed_folder/public/

Nginx UVdesk Installation1

Step 2: Click on let’s begin button to set up the project

Nginx UVdesk Installation2

Step 3: Evaluating System Requirement

Make sure you have installed all required extension, if not this will show an error in red mark.Nginx UVdesk Installation3

Common Error: “Unable to locate path on the server”



Step 4: Click on proceed to configure database

Fill the database details such as server name, port name, user name, password and database name.

Note: Make sure your database password does not contain some special character(such as #$%@)

Nginx UVdesk Installation4

Step 5: Create a super admin account

Type admin name, email, and password for the super admin account.

Nginx UVdesk Installation5

Step 6: Website Configuration

Enter member and customer panel prefix here.

Nginx UVdesk Installation6

Step 7: Install Now

Click ‘Install Now‘ and wait a sec for the migration. Once it will be done you will get the Admin and Knowledgebase panel link.

Nginx UVdesk Installation7

7). Testing

UVdesk Open Source Helpdesk Customer/KnowledgeBase panel – http://domain/installed_folder/public/en/

Sign In as Customer – http://domain/installed_folder/public/customer/login

Sign In as Admin – http://domain/installed_folder/public/member/login


Hope you find this user-guide helpful! Please let me know in the comment section below or you may reach out us at support@uvdesk.com

Category(s) Symfony UVdesk
. . .

Leave a Comment

Your email address will not be published. Required fields are marked*


  • Le Thanh Tung
    [Permission denied]
    – At Database Configuration
    Error thrown while running command “uvdesk_wizard:env:update DATABASE_URL ‘mysql://sql_uvdesk:bzsGKsh824Y4tbrY@'”. Message: “Warning: file_put_contents(/www/uvdesk/.env): failed to open stream: Permission denied”
    Hide context Hide trace
    “exception” => ErrorException {#722 ▶}
    “command” => “uvdesk_wizard:env:update DATABASE_URL ‘mysql://sql_uvdesk:bzsGKsh824Y4tbrY@'”
    “message” => “Warning: file_put_contents(/www/uvdesk/.env): failed to open stream: Permission denied”
    /www/uvdesk/src/Console/EnvironmentVariables.php:75 {▼
    › if (trim($stream) != trim($this->conf)) {
    › file_put_contents($this->path, $stream);
    › }
    /www/uvdesk/vendor/symfony/console/Command/Command.php:255 {▶}
    /www/uvdesk/vendor/symfony/console/Application.php:952 {▶}
    /www/uvdesk/vendor/symfony/framework-bundle/Console/Application.php:87 {▶}
    /www/uvdesk/vendor/symfony/console/Application.php:273 {▶}
    /www/uvdesk/vendor/symfony/framework-bundle/Console/Application.php:73 {▶}
    /www/uvdesk/vendor/symfony/console/Application.php:149 {▶}
    /www/uvdesk/src/Controller/ConfigureHelpdesk.php:196 {▶}
    /www/uvdesk/vendor/symfony/http-kernel/HttpKernel.php:151 {▶}
    /www/uvdesk/vendor/symfony/http-kernel/HttpKernel.php:68 {▶}
    /www/uvdesk/vendor/symfony/http-kernel/Kernel.php:198 {▶}
    /www/uvdesk/public/index.php:25 {▶}

    But I tried to connect to phpmyadmin and it worked

    • akshaykrsingh.bd358 (Moderator)
      Hi Le Thanh

      Thank you for contacting us. Good to hear that it worked for you. In the future, if you have any other issue or query please let us know at support@webkul.com and our concern team will assist you.

      Thanks & Regards
      Webkul Team.