How to install Couch cms on Linuxmint 18.03

To install Couch cms on Linuxmint 18.03
Couch CMS is a simple and flexible, free and open source Content Management System (CMS) that allows web designers to design beautiful web sites without any knowledge of PHP. With this, the method to install Couch cms on Linux mint-18.03 comes to an end.

Prerequisites
To install LAMP(Apache, MariaDB and php7.2)
In MariaDB (create database and user and give privileges to that user )
Php installation with required following modules

add-apt-repository ppa:ondrej/php 
apt-get update 
apt-get install php7.2 php7.2-mysql php7.2-curl php7.2-json php7.2-cgi libapache2-mod-php7.2 php7.2-mcrypt php7.2-xmlrpc php7.2-gd php7.2-mbstring php7.2  php7.2-common
php7.2-xmlrpc php7.2-soap  php7.2-xml php7.2-intl  php7.2-cli  php7.2-ldap php7.2-zip php7.2-readline php7.2-imap php7.2-tidy php7.2-recode php7.2-sq php7.2-intl

Installation
Download a couch package by using wget command.

linuxhelp ~ # wget https://www.couchcms.com/uploads/CouchCMS-2.1.zip
--2018-06-16 15:11:09--  https://www.couchcms.com/uploads/CouchCMS-2.1.zip
Resolving www.couchcms.com (www.couchcms.com)... 162.144.36.197
Connecting to www.couchcms.com (www.couchcms.com)|162.144.36.197|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2499150 (2.4M) [application/zip]
Saving to: ‘;CouchCMS-2.1.zip’;

CouchCMS-2.1.zip           100%[=====================================>]   2.38M   709KB/s    in 3.4s    

2018-06-16 15:11:14 (709 KB/s) - ‘;CouchCMS-2.1.zip’; saved [2499150/2499150]

The downloaded package is a zip file, so we need to unzip the package now.

linuxhelp ~ # unzip CouchCMS-2.1.zip 
Archive:  CouchCMS-2.1.zip
   creating: CouchCMS-2.1/
  inflating: CouchCMS-2.1/CHANGELOG.md  
   creating: CouchCMS-2.1/couch/
  inflating: CouchCMS-2.1/couch/.htaccess  
   creating: CouchCMS-2.1/couch/addons/
   creating: CouchCMS-2.1/couch/addons/bootstrap-grid/
.
.
.
inflating: CouchCMS-2.1/couch/upload.php  
  inflating: CouchCMS-2.1/couch/uploader.php  
   creating: CouchCMS-2.1/couch/uploads/
   creating: CouchCMS-2.1/couch/uploads/file/
   creating: CouchCMS-2.1/couch/uploads/file/secure/
  inflating: CouchCMS-2.1/couch/uploads/file/secure/.htaccess  
  inflating: CouchCMS-2.1/couch/_index.php  
  inflating: CouchCMS-2.1/INSTALL.md  
  inflating: CouchCMS-2.1/README.md  
  inflating: CouchCMS-2.1/UPGRADE.md

Then, rename the extracted directory

linuxhelp ~ # ls
CouchCMS-2.1  CouchCMS-2.1.zip
linuxhelp ~ # mv CouchCMS-2.1 couch

Change the ownership and permission for couch directory

linuxhelp ~ # chown -R www-data:www-data couch/
linuxhelp ~ # chmod -R 775 couch/

Then we have to move the couch directory into the /html location

linuxhelp ~ # mv couch/ /var/www/html/

Now we have to create a new virtual host configuration for accessing the couch cms application

linuxhelp ~ # cd /etc/apache2/sites-available/
linuxhelp sites-available # vim couch.conf
<VirtualHost *:80>
ServerName www.linuxhelp1.com
DocumentRoot /var/www/html/couch/
<Directory /var/www/html/couch/>
AllowOverride All
allow from all
</Directory>
</VirtualHost>

Go to couch directory. then rename the config.example.php file.

linuxhelp sites-available # cd /var/www/html/couch/couch/
linuxhelp couch # mv config.example.php config.php

now, open the config.php file, then fill the database details.

linuxhelp couch # vim config.php
[…]
// Name of the database
    define( 'K_DB_NAME', 'couch' );
    // 5.
    // Database username
    define( 'K_DB_USER', 'couchuser' );
    // 6.
    // Database password
    define( 'K_DB_PASSWORD', '123' );
    // 7.
    // MySQL hostname (it will usually be 'localhost')
    define( 'K_DB_HOST', 'localhost' );
    // 7b.
[..]

Enable the site access.

linuxhelp couch # a2ensite couch.conf 
Enabling site couch.
To activate the new configuration, you need to run:
  service apache2 reload

Entry to the host file

linuxhelp sites-available # vim /etc/hosts
<your ip address>     <your domain name>

Then we need to restart the apache2 service

linuxhelp sites-available # systemctl restart apache2.service

Now we have to open a browser and type the following URL of http://local IP (or ) domain name


Now,here fill the admin datails.

The installation completed.

Here, give username and password.then, click login.

Finally, here we can see admin page of couch cms.

With this, the method to install Couch cms on Linuxmint 18.03 comes to an end.

Tag : Linux Mint
FAQ
Q
How do I edit or delete a post?
A
Unless you are a board administrator or moderator, you can only edit or delete your own posts. You can edit a post by clicking the edit button for the relevant post, sometimes for only a limited time after the post was made. If someone has already replied to the post, you will find a small piece of text output below the post when you return to the topic which lists the number of times you edited it along with the date and time. This will only appear if someone has made a reply; it will not appear if a moderator or administrator edited the post, though they may leave a note as to why they’ve edited the post at their own discretion. Please note that normal users cannot delete a post once someone has replied.
Q
what are all the features of couch cms in linuxmint?
A
the features of couch cms in linuxmint are,
Create/manage templates and define editable regions, folders etc. within templates.
Access the Admin panel and create new pages and edit/delete all existing pages.
Create/manage any number of lower level user accounts.
Access the website.
Q
what are all the Prerequisites needed to install the package of couch in linuxmint?
A
Prerequisites of couch are,
To install LAMP(Apache, MariaDB and php7.2)
In MariaDB (create database and user and give privileges to that user )
Q
where to get download the package of couch cms on linuxmint?
A
Download a couch package by using wget command.


# wget https://www.couchcms.com/uploads/CouchCMS-2.1.zip
Q
what is the purpose of couch cms in linuxmint?
A
Couch CMS is a simple and flexible, free and open source Content Management System (CMS) that allows web designers to design beautiful web sites without any knowledge of PHP.