How to install elxis4.6 cms in ubuntu 18.10
Installation of elxis cms 4.6 using lamp in Ubuntu 18.10
Elxis is a free Content Management System (CMS) that allows you to easily create websites of any scale from small personal websites and blogs to complex corporate websites and portals without the need of having programming skills. Elxis CMS is an open source project released for free under the Elxis Public License (EPL) license. Elxis CMS is provided for free and without any guarantee. In this tutorial, we will cover the installation of Elxis CMS 4.6 on Ubuntu 18.10.
Checking the Ubuntu version
root@linuxhelp:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.10
Release: 18.10
Codename: cosmic
Install the apache by using the Following command
root@linuxhelp:~# apt install apache2
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
apache2-doc apache2-suexec-pristine | apache2-suexec-custom
The following NEW packages will be installed:
apache2
0 upgraded, 1 newly installed, 0 to remove and 311 not upgraded.
Need to get 0 B/95.1 kB of archives.
After this operation, 535 kB of additional disk space will be used.
Selecting previously unselected package apache2.
(Reading database ... 133086 files and directories currently installed.)
Preparing to unpack .../apache2_2.4.34-1ubuntu2_amd64.deb ...
Unpacking apache2 (2.4.34-1ubuntu2) ...
Processing triggers for ufw (0.35-6) ...
Setting up apache2 (2.4.34-1ubuntu2) ...
Processing triggers for systemd (239-7ubuntu10) ...
Processing triggers for man-db (2.8.4-2) ...
Once the Installation of apache Is completed start the service
root@linuxhelp:~# systemctl start apache2.service
Enable the service of apache by using the Following Command
root@linuxhelp:~# systemctl enable apache2.service
Synchronizing state of apache2.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable apache2
Next step will be installing mysql
root@linuxhelp:~# apt install mysql*
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'mysqltcl' for glob 'mysql*'
Note, selecting 'mysql-workbench' for glob 'mysql*'
Note, selecting 'mysql-client-5.5' for glob 'mysql*'
Note, selecting 'mysql-client-5.6' for glob 'mysql*'
Note, selecting 'mysql-client-5.7' for glob 'mysql*'
Note, selecting 'mysql-common-5.6' for glob 'mysql*'
Note, selecting 'mysql-server-5.0' for glob 'mysql*'
Note, selecting 'mysql-server-5.1' for glob 'mysql*'
Note, selecting 'mysql-server-5.5' for glob 'mysql*'
Note, selecting 'mysql-server-5.6' for glob 'mysql*'
Note, selecting 'mysql-server-5.7' for glob 'mysql*'
.
.
.
Setting up mysql-utilities (1.6.4-1) ...
Setting up mysql-testsuite-5.7 (5.7.25-0ubuntu0.18.10.2) ...
Setting up python-cryptography (2.3-1ubuntu1) ...
Setting up mysql-testsuite (5.7.25-0ubuntu0.18.10.2) ...
Setting up python-paramiko (2.4.1-0ubuntu3.2) ...
Setting up odbcinst (2.3.6-0.1) ...
Setting up odbcinst1debian2:amd64 (2.3.6-0.1) ...
Setting up libgdal20 (2.3.2+dfsg-2) ...
Setting up mysql-workbench (6.3.10+dfsg-3ubuntu1) ...
Processing triggers for libc-bin (2.28-0ubuntu1) ...
Processing triggers for systemd (239-7ubuntu10) ...
Once the mysql Installation is completed start the service
root@linuxhelp:~# systemctl start mysql
Enable the mysql service by using the Following command
root@linuxhelp:~# systemctl enable mysql
Synchronizing state of mysql.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable mysql
Once Mysql is Installed, install the php and php modules
root@linuxhelp:~# apt install php php-mysql php-curl php-json php-cgi php-xmlrpc php-gd php-mbstring php-soap php-xml php-intl php-cli php-ldap php-zip
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libapache2-mod-php7.2 libxmlrpc-epi0 php-common php7.2 php7.2-cgi php7.2-cli php7.2-common
php7.2-curl php7.2-gd php7.2-intl php7.2-json php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-opcache
php7.2-readline php7.2-soap php7.2-xml php7.2-xmlrpc php7.2-zip
Suggested packages:
php-pear
.
.
.
Creating config file /etc/php/7.2/apache2/php.ini with new version
Module mpm_event disabled.
Enabling module mpm_prefork.
apache2_switch_mpm Switch to prefork
apache2_invoke: Enable module php7.2
Setting up php-xmlrpc (1:7.2+62) ...
Setting up php-mysql (1:7.2+62) ...
Setting up php-cgi (1:7.2+62) ...
Setting up php-cli (1:7.2+62) ...
Setting up php7.2 (7.2.15-0ubuntu0.18.10.2) ...
Setting up php (1:7.2+62) ...
After completing, secure the root password for mysql database as Follows
root@linuxhelp:~# mysql_secure_installation
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?
Press y|Y for Yes, any other key for No:
Please set the password for root here.
New password:
Re-enter new password:
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
- Dropping test database...
Success.
- Removing privileges on test database...
Success.
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.
All done!
Restart the apache service by using following command
root@linuxhelp:~# systemctl restart apache2.service
Download an Elxis package on using the wget command
root@linuxhelp:~# wget http://www.elxis.org/components/com_content/plugins/download/includes/dl.php?c=XDsMIFM1DWAKJVNmVnlTYAMrXCgONlthADMFYgR2Wj0GdAd7ATRVMQBkCjNUNw9hBz0PPFFl -O elxis.zip
--2019-03-31 06:12:08-- http://www.elxis.org/components/com_content/plugins/download/includes/dl.php?c=XDsMIFM1DWAKJVNmVnlTYAMrXCgONlthADMFYgR2Wj0GdAd7ATRVMQBkCjNUNw9hBz0PPFFl
Resolving www.elxis.org (www.elxis.org)... 144.76.220.143
Connecting to www.elxis.org (www.elxis.org)|144.76.220.143|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 8800823 (8.4M) [application/octet-stream]
Saving to: ‘elxis.zip’
elxis.zip 100%[=====================================>] 8.39M 44.7MB/s in 0.2s
2019-03-31 06:12:31 (44.7 MB/s) - ‘elxis.zip’ saved [8800823/8800823]
Once the installation package is downloaded, Extract it as follows.
root@linuxhelp:~# unzip elxis.zip -d elxis
Archive: elxis.zip
creating: elxis/components/
creating: elxis/components/com_content/
inflating: elxis/components/com_content/content.article.xml
inflating: elxis/components/com_content/content.category.xml
inflating: elxis/components/com_content/content.menu.xml
inflating: elxis/components/com_content/content.php
inflating: elxis/components/com_content/content.xml
.
.
.
inflating: elxis/templates/system/images/print.png
inflating: elxis/templates/system/inner.php
inflating: elxis/templates/system/mobile.php
inflating: elxis/templates/system/offline.mobile.php
inflating: elxis/templates/system/offline.php
inflating: elxis/templates/system/security.mobile.php
inflating: elxis/templates/system/security.php
Now move the Elxis directory to /var/www/ location.
root@linuxhelp:~# mv elxis /var/www/
Change the ownership for the Elxis directory with the help of the following command.
root@linuxhelp:~# chown -R www-data.www-data /var/www/elxis
Next,Configure the MySQL database. Log into MySQL as a root user and make the necessary settings.
root@linuxhelp:~# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.25-0ubuntu0.18.10.2 (Ubuntu)
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database elxis1;
Query OK, 1 row affected (0.01 sec)
mysql> create user 'elxisuser'@localhost identified by '123456';
Query OK, 0 rows affected (0.01 sec)
mysql> grant all privileges on elxis1.* to 'elxisuser'@localhost;
Query OK, 0 rows affected (0.01 sec)
mysql>
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
Next step is very crucial. Need to configure the Apache VirtualHost for elxis
root@linuxhelp:~# vim /etc/apache2/sites-available/elxis.conf
<Virtualhost *:80>
Servername www.linuxhelp1.com
Documentroot /var/www/elxis
</Virtualhost.
Configure the host entry by using he following command
root@linuxhelp:~# vim /etc/hosts
<ipaddress> <domain name>
Disable default access
root@linuxhelp:~# a2dissite 000-default.conf
Site 000-default disabled.
To activate the new configuration, you need to run:
systemctl reload apache2
Enable site access
root@linuxhelp:~# a2ensite elxis.conf
Enabling site elxis.
To activate the new configuration, you need to run:
systemctl reload apache2
Enable rewrite module
root@linuxhelp:~# a2enmod rewrite
Enabling module rewrite.
To activate the new configuration, you need to run:
systemctl restart apache2
Once it is completed, Restart the Apache Web Server by running the following command
root@linuxhelp:~# systemctl restart apache2.service
Once It completed Enter into browser and enter your domain name
Choose the language for using Elxis CMS as shown below
With this, the method to install Elxis CMS 4.6 on Ubuntu 18.10 comes to an end.
# vim /etc/hosts
Simplified content management – Managing content becomes non-technical
Saves time and effort – Its advanced functionality and automation saves time & labor
Complete control- You can make changes anytime, anywhere.