-
Notifications
You must be signed in to change notification settings - Fork 561
Faveo Helpdesk Installation on Debian 9 with Nginx on PHP 7.1
This document will list steps on how to install Faveo Helpdesk on a new Debian 9 Server.
We will install following dependencies in order to make Faveo Helpdesk work:
- Nginx
- PHP 7.1
- PHP Extensions: listed in server requirement
- MySQL
- Composer
- Cron Job
Read the detailed list of server requirement
We are using vi editor throughout to open and edit file, you can use nano editor also
Please note that you have to make changes in the iptables configurations. This allows to open ports that are necessary in Faveo installation.
This is an optional step, If you are able to access your server remotely on Public IP. This step will not be required.Mainly on local network server this step is required. If you are purchasing/renting server in a data centre this step might not be required.
iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --sport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT
PS:
- You have to reset the firewall and iptables to your specifications
- This step might vary for different data centres or cloud service providers, Please check with your hosting company on opening port number and correct settings
useradd -r www-data
usermod -G www-data www-data
apt-get install apt-transport-https ca-certificates
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ jessie main" > /etc/apt/sources.list.d/php.list
apt-get update
Update your system
apt-get update && apt-get upgrade
In this step we install following
- PHP
- Required PHP Extension
- Git
- MySQL
- Curl
- OpenSSL
- Nginx
sudo apt-get install -y nginx git curl sl mlocate dos2unix bash-completion openssl
apt-get install php7.1-xml php7.1-mbstring php7.1-zip php7.1-mysql php7.1-opcache php7.1-json php7.1-curl php7.1-ldap php7.1-cgi php7.1-imap php7.1-cli php7.1-fpm php7.1-common php7.1-bcmath php7.1-mcrypt libapache2-mod-php7.1
service nginx stop
service php7.1-fpm stop
apt-get install mysql-server
service mysql start
mysql_secure_installation
mysql -u root -p
CREATE DATABASE faveo;
GRANT ALL PRIVILEGES ON faveo.* TO 'faveouser'@'localhost' IDENTIFIED BY 'faveouserpass';
FLUSH PRIVILEGES;
quit
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar xvfz ioncube_loaders_lin_x86-64.tar.gz
php -i | grep extension_dir (To find PHP extension Directory)
Copy ioncube loader to Directory.
cp ioncube/ioncube_loader_lin_7.1.so /usr/lib/php/20160303
Add below line to /etc/php/7.1/cli/php.ini and vi /etc/php/7.1/fpm/php.ini
zend_extension = "/usr/lib/php/20160303/ioncube_loader_lin_7.1.so"
Save and exit.
Faveo files can be manually uploaded to server or copied from Github, if you have access to Github account then use this step, else follow the next step
Create a folder for Faveo and upload Faveo Help-Desk Community
mkdir -p /opt/faveo/faveo-helpdesk/
git clone https://github.com/ladybirdweb/faveo-helpdesk.git /opt/faveo/faveo-helpdesk/
OR Copy Faveo Help Desk via SSH
In case you want to upload the Faveo files from your local system to your server and not use Github, then follow this step Download the Faveo zip file from our billing site https://www.faveohelpdesk.com Use a File transferring client like Filezilla, WinSCP to upload the files to our server directory. Open Filezilla and enter the root Credentials of the server and login.
Create a folder for faveo inside that in the path /opt/faveo/faveo-helpdesk/
Make sure that you have extracted all the files under that folder /opt/faveo/faveo-helpdesk/
Now continue the process by logging in back to ssh terminal
Login to the file location
scp filename.zip username@destination:/where/to/put
chown -R www-data:www-data /opt/faveo/
chown -R www-data:www-data /opt/faveo/faveo-helpdesk/
chmod -R 755 /opt/faveo/
chmod -R 755 /opt/faveo/faveo-helpdesk/
chmod -R 755 /opt/faveo/faveo-helpdesk/storage
chmod -R 755 /opt/faveo/faveo-helpdesk/bootstrap
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
service nginx stop
mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.back
wget -O /etc/nginx/nginx.conf https://support.ladybirdweb.com/uploads/ubuntu16.04/faveo-nginx-conf.txt
vi /etc/nginx/conf.d/faveo-helpdesk.conf
upstream faveo_php {
server unix://opt/faveo/faveo-helpdesk/faveo_php.socket;
}
server {
listen 80;
listen 127.0.0.1:80;
# Edit the following line with the correct information.
server_name %(SERVERNAME)s;
error_log /var/log/nginx/faveo_error_log;
access_log /var/log/nginx/faveo_access_log;
root /opt/faveo/faveo-helpdesk/public;
index index.php index.html index.htm;
error_page 403 404 405 500 501 502 503 504 @error;
try_files $uri $uri/ /index.php?$args;
location @error {
rewrite ^/(.*)$ /index.php?$1;
}
location ~ /\. {
deny all;
}
location ~ /(artisan|composer.json|composer.lock|gulpfile.js|LICENSE|package.json|phpspec.yml|phpunit.xml|README.md|readme.txt|release-notes.txt|server.php) {
deny all;
}
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
include /etc/nginx/fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass faveo_php;
}
}
Edit the faveo-helpdesk.conf with your domain name
Remove the default config
rm -rf /etc/nginx/conf.d/default.conf
vi /etc/php/7.1/fpm/pool.d/faveo_php.conf
[faveo_php]
user = www-data
group = www-data
listen = /opt/faveo/faveo-helpdesk/faveo_php.socket
listen.owner = www-data
listen.group = www-data
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
chdir = /
service mysql restart
service nginx restart
service php7.1-fpm restart
We are using default localhost URL where Faveo is installed, you can change the URL based on your system setting and IP address
crontab -u www-data -e
* * * * * /usr/bin/php7.1 /opt/faveo/faveo-helpdesk/artisan schedule:run >> /dev/null 2>&1
Now you can install Faveo via GUI Wizard or CLI.
You can access Faveo url in the browser
PS:
- You have to reset the firewall and iptables to your specifications
- You need to follow steps yourself to harden the security of your server, server security is not covered in this article
- Redis is recommended for messaging que and improving system performance
- Always use SSL/HTTPS URL for Faveo
Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker.
Did you find it helpful? If not email us on support@faveohelpdesk.com
Installation and Upgrade Guide
- GUI Install Wizard
- Manual Install
- CLI Install
- Server Requirements
- Installation with Apache
- Installation with cPanel
- Cron Job or any Job scheduler
- Faveo Helpdesk Installation on CentOS 7 with Apache on PHP 7.1
- Faveo Helpdesk Installation on CentOS 7 with Nginx on PHP 7.1
- Faveo Helpdesk Installation on Ubuntu 18.04 LTS with Apache on PHP 7.1
- Faveo Helpdesk Installation on Ubuntu 18.04 LTS with Nginx on PHP 7.1
- Faveo Helpdesk Installation on Debian 9 with Nginx on PHP 7.1
- Faveo Helpdesk Installation on Debian 9 with Apache on PHP 7.1
- Migrating Faveo from one server to another
- Configuration of Redis with Faveo
- Install and configure Redis, Supervisor and Worker for Faveo on Ubuntu 16.04
- Install Let’s Encrypt SSL on CentOS 7 Running Apache Web Server
- Install and configure a simple mail server for sending mails using PHP mail function in Faveo on Ubuntu 16.04 server
- Install and configure Redis, Supervisor and Worker for Faveo on Centos 7
- Install and configure a simple mail server for sending mails using PHP mail function in Faveo on Centos 7 server
- Faveo Helpdesk Pro Installation on Windows Server 2012 R2
- Install Active Directory Domain Services in Windows Server 2012 R2
- Install Faveo Helpdesk Community on Centos, Ubuntu or Debian Using Script
- Set up automatic backup for Faveo-Helpdesk
Administrator's Guide
- Faveo File Storage
- Change client side theme color
- How to edit or change the footer in faveo
- How to change agent and admin panel Faveo logo link and logo
- Agents
- Departments
- Team
- Priority
- SLA
- Workflow
- Helptopic
- Default Ticket Settings
- Status
- Rating
- Close Ticket Workflow
- Company Settings
- Social Login
- Language
- Security
- Debugging/Logs
- Ban Emails
- Widgets
Agent's Guide
Email Integration
Release & Upgrade Notes
- General Faveo Upgrade Guide Manual
- General Faveo Upgrade Guide Auto
- Upgrade guide to v1.9.2
- Upgrade guide to v1.9.0
- How to update v1.0.7.9 to v1.0.8.0
- Manual Upgrade from v1.0.7.8 to v1.0.7.9
- Faveo Release notes & upgrade guide for V1.0.7.7
- Faveo Release notes & upgrade guide for V1.0.7.5
- Faveo Release notes & upgrade guide for V1.0.7
Known Issues
- The open_basedir restriction in effect
- 404 Not Found
- 500 Internal Server Error
- Bug after update from 1.0.7.4 to 1.0.7.5 or higher version
- Syntax error, unexpected ‘var’(T_VAR), expecting ‘;’
Contribute & Feedback
- Support the community edition
- Contribution Guide
- Faveo Feedback & Customisation
- Help in language translate
Knowledge Base
Third Party Integration
Plugins
API