0% found this document useful (0 votes)
2 views10 pages

System Installation Guide

This System Installation Guide provides detailed steps for configuring web panels and services on a hosting server, including requirements for MySQL databases, PHP modules, and server settings. It outlines the installation process for necessary components such as IonCube Loader and Socket Cluster Service, as well as recommended configurations for PHP, MySQL, and Apache. Additionally, it specifies the setup for cron jobs and required server ports to ensure optimal system performance.

Uploaded by

AldiNayafa
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views10 pages

System Installation Guide

This System Installation Guide provides detailed steps for configuring web panels and services on a hosting server, including requirements for MySQL databases, PHP modules, and server settings. It outlines the installation process for necessary components such as IonCube Loader and Socket Cluster Service, as well as recommended configurations for PHP, MySQL, and Apache. Additionally, it specifies the setup for cron jobs and required server ports to ensure optimal system performance.

Uploaded by

AldiNayafa
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

System Installation Guide

Please follow the steps below to configure the web panels and web services on your hosting
server.

1) Please make sure that the hosting server meets the requirement mentioned in "Setup
Information" document provided to you before starting the project.

2) Unzip your web source code and copy/upload in a folder where your domain is pointing.

3) Create a MySQL database and import the system’s MySQL .sql dump file provided to you
or exported from previous hosting server.

4) Once the database is ready, Please go to asset/libraries folder and make changes in
following file. You will need to apply MySQL database name, User and password in below
file.
- db_info.php

5) In case if you are migrating your system from old hosting server to new hosting server
and if you have changed your domain then please contact our accounts team at
accounts@[Link] to get the license otherwise the existing license files provided in
your source code will work fine.

6) Please set “777” permission to below folders & it’s subfolder


- webimages
- assets/img

7) IonCube Loader Installation

You can install this module by following below mentioned URL. Follow the instruction
provided by IonCube team.

Website: [Link]
8) Required PHP Modules/Extensions

Below is the list of PHP extensions which are required to run our system. Please make
sure that all are installed in PHP version.

• exif
• mbstring
• curl
• gd
• ionCube Loader
• mysqli
• dom
• fileinfo
• ctype
• gettext
• hash
• json
• libxml
• mcrypt
• mysqlnd
• openssl
• sockets
• zlib
• soap
• memcache-[Link]
• mongodb
• imagick
9) PHP INI file Settings

Below are the recommended settings to apply in php ini file to run the system smoothly.

• zlib.output_compression (Must be "On")


• post_max_size >= 900MB
• upload_max_filesize >= 900MB
• max_execution_time = 0
• max_input_time = 0
• memory_limit = -1
• allow_url_fopen (Must be "On")
• max_file_uploads >= 20
• short_open_tag (Must be "On")
• zend.enable_gc (Must be "On")
• max_input_vars >= 10000
• default_charset = UTF-8

10) MySQL settings

Below are the recommended settings to apply in MySQL configuration file to run the
system smoothly.

• default_charset = UTF-8
• sql_mode = NO_ENGINE_SUBSTITUTION
• mysql strict mode (Must be "Off")
• innodb_file_per_table (Must be "On")
• query_cache_type = 0
• open_files_limit >= 10000
• max_allowed_packet >= 256MB
• max_user_connections >= 1000
• max_ connections >= 1000
• innodb_buffer_pool_size = 65% of SERVER_RAM

11) Server Settings

Below is the list of Server Settings which are required to run our system.

• default_charset = UTF-8
• PHP Version >= 7.1
• Mod Security (Must be "Off")
• .htaccess file Support
• MYSQL localhost server connection
• Nginx (Must be "Disabled")
• Force HTTPS (Must be "Disabled") from apache level. Need HTTP support for some
files of our system

12) Socket Cluster Service Installation

System needs socket cluster service to provide publish-subscribe event support as


Software base. Follow the steps mentioned below to install this service.

Installation:
• Commands for CentOs
Login as root via SSH and run below set of commands.

- yum remove -y nodejs


- rm -rf /var/cache/yum
- rm /etc/[Link].d/nodesource*
- yum clean all
- yum install -y gcc-c++ make
- yum install -y git
- yum install -y mlocate
- yum install -y php-devel
- curl -sL [Link] | bash -
- yum install -y nodejs
- npm install -y -g npm
- npm install forever -g
- npm install -g socketcluster

• Commands for Ubuntu


Login as root via SSH and run below set of commands.

- sudo apt-get -y purge --auto-remove nodejs


- sudo apt-get autoclean
- sudo apt-get install -y curl
- sudo apt-get install -y unzip
- sudo apt-get install -y build-essential
- sudo apt-get install -y git-all
- sudo apt-get install -y mlocate
- sudo apt-get install -y php-dev
- curl -sL [Link] | sudo bash -
- sudo apt-get install nodejs-dev node-gyp libssl1.0-dev
- sudo apt-get install -y nodejs
- sudo apt-get install -y build-essential
- sudo apt-get install -y npm
- npm install forever -g
- npm install -g socketcluster

Currently the system supports CentOS and Ubuntu Linux version only so please
make sure that your hosting server’s Linux is either CentOs or Ubuntu

Socket Cluster Configuration Steps in System:

- If Source contains “assets/libraries/SocketClsNode” folder


a) Open terminal OR login via SSH
b) Go to “public_html” folder
c) Run command:
“SOCKETCLUSTER_SOCKET_CHANNEL_LIMIT=9999999999999999
SOCKETCLUSTER_PORT=#YOUR_SOCKET_PORT# ENV='prod'
SOCKETCLUSTER_LOG_LEVEL=0 forever start assets/libraries/SocketClsNode/[Link]”

#YOUR_SOCKET_PORT# should be replace with actual port number. To get socket


cluster’s port, follow the steps mentioned below.
a) Open file “assets/libraries/configuration_variables.php” if exits
otherwise open “assets/libraries/[Link]” file.
b) Search keyword “tsite_host_sc_port”
c) Copy & use mentioned port if numeric value present.

This port should be opened for both inbound & outbound connection.

- If Source does not contain “assets/libraries/SocketClsNode” folder


a) Open terminal OR login via SSH
b) Go to “root” folder
c) Run below Commands

• rm -rf /root/SocketClsNode/
• socketcluster create SocketClsNode
• “SOCKETCLUSTER_SOCKET_CHANNEL_LIMIT=9999999999999999
SOCKETCLUSTER_PORT=#YOUR_SOCKET_PORT# ENV='prod'
SOCKETCLUSTER_LOG_LEVEL=0 forever start /root/SocketClsNode/[Link]”

#YOUR_SOCKET_PORT# should be replace with actual port number. To get socket


cluster’s port, follow the steps mentioned below.
a) Open file “assets/libraries/configuration_variables.php” if exits
otherwise open “assets/libraries/[Link]” file.
b) Search keyword “tsite_host_sc_port”
c) Copy & use mentioned port if numeric value present.

This port should be opened for both inbound & outbound connection.

13) MongoDB

MongoDB installation is required only if you have purchased Google Map API replacement
Add-on. Please ignore this if you have not purchased.

Install & activate MongoDB version 4.4 by following below mentioned URL.

URL: [Link]

14) Cron Jobs

Below is the list of files that needs to be run automatically at some interval as a cronjob.

- If Source Code contains file “system_cron_jobs.php”, configure below things.


File: system_cron_jobs.php
Time: Every Minute

- If Source Code does not contain file “system_cron_jobs.php”, configure below


things.
a) File: cron_schedule_ride_new.php
Time: every 4 minutes

b) File: cron_notification_email.php
Time: every 30 minutes

c) File: cron_update_currency.php
Time: Once in a day

d) File: cron_driver_subscription.php
Time: Once in a day

Cron Job must be configured using http protocol. For example,


wget -q -O /dev/null [Link]
15) System Ports

Open below mentioned server ports for both Inbound & Outbound Connection.

- 2195 (Used to send notification on IOS devices)

- 443 (Used to send notification on Android Device & to provide SSL service)

- Socket Cluster’s Port

To get socket cluster’s port, follow the steps mentioned below.


a) Open file “assets/libraries/configuration_variables.php” if exits
otherwise open “assets/libraries/[Link]” file.
b) Search keyword “tsite_host_sc_port”
c) Open mentioned port if numeric value present.

- Port for Google API Replacement Plan (You can ignore this if not purchased)

To get port for Google API Replacement, follow the steps mentioned below.
a) Open file “assets/libraries/configuration_variables.php” if exits
otherwise open “assets/libraries/[Link]” file.
b) Search keyword “tsite_host_gmap_replacement_port”
c) Open mentioned port if numeric value present.

16) PHP-FPM tuning

Kindly tune your PHP-FPM settings as shown below so that it can handle more concurrent
request and traffic.

a) Go to “MultiPHP Manager” in WHM panel and click on “Edit PHP-FPM” as shown below
b) Change the values as shown in below screenshot and save it.

17) Apache tuning

Kindly tune your Apache settings as shown below so that it can handle more concurrent
request and traffic.

a) Go to “Apache Configuration” as shown in below screenshot.


b) Change the values as shown in below screenshot.
18) Restart your server. Use option “Graceful Server Reboot”

You might also like