eSyndiCat is a free, open source and one of the most popular PHP directory software that can be used as an addition to your existing site or as a stand-alone platform. eSyndiCat is the seo-friendly PHP directory script that allows to achieve top rank and take the leading positions in the most popular search engines. eSyndiCat comes with lot's of features including, SEO friendly URLs, Custom meta for pages, Clean HTML layout structure, Spider friendly structure and much more.

In this tutorial, we will learn how to install eSyndiCat on Ubuntu 16.04 server.

Prerequisites

  • A server running Ubuntu 16.04.

  • A non-root user with sudo privileges.

Install LAMP Server

Before starting, you will need to install LAMP server on your system. First, install Apache and MariaDB using the following command:

sudo apt-get install apache2 mariadb-server -y

Next, start Apache and MariaDB service and enable them to start on boot with the following command:

sudo systemctl start apache2

sudo systemctl enable apache2
sudo systemctl start mysql
sudo systemctl enable mysql

By default, PHP5 is not available in Ubuntu 16.04 default repository. So you will need to add Ondrej PPA to your system. You can do this by running the following command:

sudo apt-get install python-software-properties -y

sudo add-apt-repository ppa:ondrej/php -y

Next, update the system and install PHP5.6 with the following command:

sudo apt-get update -y

sudo apt-get install php5.6 libapache2-mod-php5.6 php5.6-mysql php5.6-xml php5.6-curl php5.6-gd php5.6-mbstring -y

Configure Database

By default, MariaDB is not secured, you can secure it by running the mysql_secure_installation script:

sudo mysql_secure_installation

This script will set a root password, remove anonymous users, disallow remote root login, and remove the test database and access to secure MariaDB as shown below:

Set root password? [Y/n] yRemove anonymous users? [Y/n] yDisallow root login remotely? [Y/n] yRemove test database and access to it? [Y/n] yReload privilege tables now? [Y/n] y

Once the MariaDB is secured, log in to MariaDB shell with the following command:

mysql -u root -p

Enter your root password, then create a database and user for eSyndicat with the following command:

MariaDB [(none)]> CREATE DATABASE esyndicat;

MariaDB [(none)]> GRANT ALL PRIVILEGES ON esyndicatdb.* TO 'esyndicat'@'localhost' IDENTIFIED BY 'password';

Next, flush the privileges:

MariaDB [(none)]> FLUSH PRIVILEGES;

Finally, exit from the MariaDB shell:

MariaDB [(none)]>exit

Download and Install eSyndicat

You can download the latest version of the eSyndicat from their official website using the following command:

wget http://www.esyndicat.com/esyndicat-script.zip

Once the download is completed, extract the downloaded file to the Apache root directory:

unzip esyndicat-script.zip -d /var/www/html/esyndicat

Next, give proper permissions to the esyndicat directory with the following command:

sudo chown -R www-data:www-data /var/www/html/esyndicat

sudo chmod -R 777 /var/www/html/esyndicat

Next, create an Apache virtual host directive for eSyndicat with the following command:

sudo nano /etc/apache2/sites-available/esyndicat.conf

Add the following lines:

 ServerAdmin admin@example.com DocumentRoot /var/www/html/esyndicat ServerName example.com 
Options Indexes FollowSymLinks MultiViewsAllowOverride AllOrder allow,denyallow from all  ErrorLog /var/log/apache2/esyndicat-error_log CustomLog /var/log/apache2/esyndicat-access_log common

Save and close the file, when you are finished. Then enable eSyndicat virtual host with the following command:

sudo a2ensite esyndicat

Finally, restart Apache service with the following command:

sudo systemctl restart apache2

Access eSyndicat

Now, open your web browser and type the URL http://example.com, you should see the following pre-installation check page:

Make sure all the requirements are fulfilled, then click on the Next button, you should see the following page:

Here, accept the License agreement and click on the Next button, you should see the following page:

Here, provide your Database details and Admin credentials, then click on the Next button to start the installation, Once the installation is completed, you should see the following page:

Here, click on the Download config.inc.php button to download the file and upload this file to the /var/www/html/esyndicat/includes/ directory. Then click on the Next button you should see the following page:

Now, click on the Next button, you should see the eSyndicat admin login page:

Now, provide your admin credential and click on the Login button, you will be redirected to the eSyndicat dashboard as shown below: