Installation Archives - CloudMinister

How to install WordPress with LEMP stack on CentOS 7 VPS (Part2)

5. Install Nginx

Nginx, pronounced as “Engine X” and is a very fast and lightweight web server, that can be used to support static files, used as a reverse proxy and also for load balancing.

Firstlly, update all the software packages by typing the following command:

# yum -y update

After that install EPEL repository that is required for Nginx packages by using command:

# yum -y install epel-release

Now install Nginx by typing the command:

# yum -y install nginx

After the installation is completed you must Enable and Start Nginx server by typing command:

# systemctl start nginx

And enable it with the command:

# systemctl enable nginx
Also check its status with

# systemctl status nginx

6. Configure Firewall

After completed with installation part, configure the firewall settings with the following command:

Open HTTP port by typing command with:

# firewall-cmd –permanent –zone=public –add-service=http

If firewalld package is not available then you can install it with command:

# yum -y install firewalld

And start firewalld service with command:

# systemctl start firewalld

Now reload firewall configuration file by typing:

# firewall-cmd –reload

Now verify your installation of Nginx by visiting the following URL on any browser you like with http://ip_address

7. Configure Nginx File

An Nginx server configuration file plays an important role, So you should be more careful when setting up this file.

For configuring Nginx file go inside the following path with the following command:# cd /etc/nginx/conf.d

# vi default.conf

And write the following code in the above file i.e. default.conf.

Also change your domain in place of ip_address

server {

listen 80;

server_name 54.161.140.2;

root /usr/share/nginx/html/wordpress;

index index.php index.html index.htm;

location / {

try_files $uri $uri/ =404;

}

error_page 404 /404.html;

location = /40x.html {

root /usr/share/nginx/html/wordpress;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root /usr/share/nginx/html/wordpress;

}

location ~* \.php$ {

try_files $uri =404;

fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;

fastcgi_index index.php;

include fastcgi_params;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

}

}

And save it with :wq command, after that edit the configuration file of php-fpm with the following command:

# vi /etc/php-fpm.d/www.conf

Open the file with above command and edit the following lines i.e.

user = nginx

group = nginx

Add new listen under listen = 127.0.0.1:9000

listen = /var/run/php-fpm/php-fpm.sock

And also add

listen.owner = nginx

listen.group = nginx

Remove comment (;) from the above two lines and save it with :wq.

8. Install WordPress File

You can easily download WordPress archive file from the link I provided in this blog.
First go inside /tmp directory by typing below command:
# cd /tmp
Download the latest WordPress setup by using wget command
# wget https://wordpress.org/latest.tar.gz
And if wget command not work then you can download it with the following command
# yum -y install wget
Now extract the downloaded file using below command:
# tar xzvf latest.tar.gz
After that move wordpress directory in /var/www/html directory by using command:
# mv wordpress /usr/share/nginx/html
Also change the ownership of /var/www/html directory by using the following command
# sudo chown -R nginx: /usr/share/nginx/html
# chmod -R 755 /usr/share/nginx/html

9. Test WordPress

Now for testing the server of WordPress you should restart the server for that follow the command:
# nginx -t (If the command shows ‘successfully’ message then the changes in file are correct and else the changes are wrong in the nginx configuration file.)
# systemctl restart php-fpm
# systemctl restart nginx

Then open any browser and type inside URL i.e http://ip_address/

After then configuration page i.e. http://ip_address/wp-admin/ is open and select language.

 

 

 

CONCLUSION

After this installation, you will be able to create or manage blog in wordpress CMS in Centos VPS.

 

How to install WordPress with LEMP stack on CentOS 7 VPS (Part1).

WordPress is one of the most popular and widely used content management system, blogging platform in the world. It is popularly used as a Blog, Portfolio Website,  etc.

In this tutorial, you are going to learn how to install WordPress with LEMP(Linux,Nginx,MySQL,and PHP)  on CentOS 7 Linux VPS.


Table of Content

  1. Prerequisites
  2. Install MySQL 8.0
  3. Configure Database in MySQL
  4. Install & Configure PHP 7.2
  5. Install Nginx
  6. Configure Firewall
  7. Configure Nginx File
  8. Install WordPress File
  9. Test WordPress

1. Prerequisites


Before you start the installation of WordPress with (LEMP) stack on Centos 7 VPS, you must have one Centos 7 VPS with root privileges on it or you can use sudo for non-root user.  

 You should also run basis command on server to check the following things-:

# df -h (To check the disk space on the system.)

 

# cat /etc/os-release (To verify the version of the VPS.)

 

# yum -y update (To update all the packages of the VPS)

2. Install MySQL 8.0

WordPress uses a MySQL database for storage, MySQL is used in stack for storing user details in database.

For installing MySQL on Centos 7 first you need to enable MySQL repository and then you can install MySQL.

# yum localinstall    -y https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

The command used for installing MySQL in CentOS 7 VPS is as follows:

# yum install mysql-server -y

Then check the MySQL version by typing following command:

# mysql -V(‘V’ is in uppercase)

After the installation is completed MySQL will start automatically and you can check it’s status by typing:

# systemctl status mysqld

If MySQL is not start automatically you can write the following command:

# systemctl start mysqld

Before going for the next step you should generate a temporary password to access MySQL root user with the following command:

# grep ‘temporary password’ /var/log/mysqld.log
Now configure the MySQL secure installation to improve the security by typing the following commands.
#
mysql_secure_installation

Login with the temporary password and assign new password, after that in this configuration it ask several questions you can give Y or N according to your requirement.

Change the password for root ? N

Remove anonymous users? Y

Disallow root login remotely? Y

Remove test database and access to it? Y

                  Reload privilege tables now? Y

 

3. Configure Database in MySQL

Now create database for WordPress in MySQL for that first login with MySQL server by using the following command:

# mysql -u root -p

And give its password, after that create database in it with the command:
mysql> CREATE DATABASE wordpress;

You can also check that database is created or not with the command:

mysql> SHOW  DATABASES;

Now create user and assign him password by using command:

mysql> CREATE USER ‘wordpress’@’localhost’ IDENTIFIED 

BY ‘Password’;

After that grant all privileges to the user created under that database with the command:

mysql> GRANT ALL ON  wordpress.* TO ‘wordpress’@’localhost’;       

Then flush all privileges on MySQL server with the command:

mysql> FLUSH PRIVILEGES;

Now exit from the MySQL server you can use commands:

mysql> exit;

mysql> \q;

Note-: In MySQL you must end each command with a semicolon(;).

4. Install & Configure PHP 7.2

PHP is used by WordPress to do various functions done by PHP like calling plugin, calling theme, validating user permissions, checking option, grab from database, etc.

In this Blog we are using PHP 7.2 versionand install it with epel-release with remi repository.

Firstly, install yum-utils packages using the following command:

    # yum -y install yum-utils

After that, install epel-release package by using command:

# yum -y install epel-release

Then import remi repository from the command:

# yum -y install  http://rpms.remirepo.net/enterprise/

remi-release-7.rpm

Enable the remi repository by typing:
# yum-config-manager –enable remi-php72

After that install PHP and all required modules by using command:

# yum -y install php-fpm php-mysql php-mbstring php-xml      php-gd php-cli php-json php-opcache php-curl
Now after the installation completed you can check the PHP version with the command:
# php -v (‘v’ is in smallcase)

 

To be Continued………

How to install Joomla with LEMP stack on CentOS 7 VPS (Part 2)

5. Install Nginx

Nginx, pronounced as “Engine X” and is a very fast and lightweight web server, that can be used to support static files, used as a reverse proxy and also for load balancing.

Firstlly, update all the software packages by typing the following command:

# yum -y update
After that install EPEL repository that is required for Nginx packages by using command:

    # yum -y install epel-release 

Now install  Nginx by typing the command:

    # yum -y install nginx

 After the installation is completed you must Enable and Start Nginx server by typing command:

    # systemctl start nginx

And enable it with the command:

    # systemctl enable nginx

Also check its status with

    # systemctl status nginx

6.Configure Firewall

After completed with installation part, configure the firewall settings with the following command:

Open HTTP port by typing command with:

    # firewall-cmd –permanent –zone=public –add-service=http

If firewalld package is not available then you can install it with command:

    # yum -y install firewalld

And start firewalld service with command:

    # systemctl start firewalld

Now reload firewall configuration file by typing:

    # firewall-cmd –reload

Now verify your installation of Nginx by visiting the following URL on any browser you like with http://ip_address

7. Configure Nginx File

An Nginx server configuration file plays an important role, So you should be more careful when setting up this file.

For configuring Nginx file go inside the following path with the following command:

# cd /etc/nginx/conf.d

# vi default.conf (Creating new file)

And write the following code in the above file i.e. default.conf.    

Also change your domain in place of   ip_address       

server {

        listen       80;

        server_name  3.95.30.147;

root /usr/share/nginx/html/joomla;

        index index.php index.html index.htm;

location / {

          try_files $uri $uri/ =404;

       }

error_page 404 /404.html;

            location = /40x.html {

        root /usr/share/nginx/html/joomla;

     }

        error_page 500 502 503 504 /50x.html;

            location = /50x.html {

        root /usr/share/nginx/html/joomla;

}

        location ~* \.php$ {

        try_files $uri =404;

        fastcgi_pass unix: /var/run/php-fpm/php-fpm.sock;

        fastcgi_index index.php;

        include fastcgi_params;       

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

   

        }

}

And save it with :wq command, after that edit the configuration file of php-fpm with the following command:

    # vi /etc/php-fpm.d/www.conf

Open the file with above command and edit the following lines i.e.

user = nginx

group = nginx

Add new listen under listen  = 127.0.0.1:9000

listen = /var/run/php-fpm/php-fpm.sock

And also add 

listen.owner = nginx 

listen.group = nginx

Remove comment (;) from the above two lines and save it with :wq.

8. Install Joomla File

     You can easily download Joomla archive file from the link I provided in this blog.

First go inside /tmp directory by typing below command:

    # cd /usr/share/nginx/html

Make one directory i.e. joomla,

# mkdir joomla

Come inside the joomla directory:

    # cd joomla/

Download the latest Joomla setup by using wget command:

    # wget https://downloads.joomla.org/cms/joomla3/3-7-5/Joomla_3-7.5-Stable-Full_Package.zip  ?format=zip

And if wget command not work then you can download it with the following command:

    # yum -y install wget

Now unzip the downloaded file using below command:

    # unzip Joomla_3-7.5-Stable-Full_Package.zip

If unzip command is not work then install it first with the following command:

# yum -y install unzip

Also change the ownership of /var/www/html directory by using the following command:

    # chown -R nginx: /usr/share/nginx/html

# chmod -R 755 /usr/share/nginx/html

Note: Also change the ownership of group of /var/lib/php/session i.e. by default it is set as apache, so now change it’s ownership with:

ls -al /var/lib/php/session (It is used to check the ownership)

    chown root:nginx /var/lib/php/session (It is used to change the ownership)

9. Test Joomla

     Now for testing the server of Joomla you should restart the server for that follow the command:

    # nginx -t (If the command shows ‘successfully’ message then the changes in file are correct and else the changes are wrong in the nginx configuration file.)

    # systemctl restart php-fpm

# systemctl restart nginx

Then open any browser and type inside URL i.e http://ip_address/

After then configuration page i.e. http://ip_address/installation/ is open and then configure the following settings

CONCLUSION 

After the above installation, you will be able to manage your website by Joomla CMS in Centos VPS by using Nginx web server.

Note-: All commands are highlighted with the green color.
All links are highlighted with the blue color.
All files are highlighted with the yellow color.
All notes are highlighted with the red color.

How to install Joomla with LEMP stack on CentOS 7 VPS (Part 1)

Joomla is a popular open source Content Management System(CMS), which is used to build websites and online application. It is separated into front-end and back-end templates.

In Joomla CMS the more focused on portal-like websites.

In this tutorial, you are going to learn how to install Joomla with LEMP(Linux,Nginx,MySQL,and PHP)  on CentOS 7 VPS.


Table of Content

  1. Prerequisites
  2. Install MySQL 8.0
  3. Configure Database in MySQL
  4. Install & Configure PHP 7.2
  5. Install Nginx
  6. Configure Firewall
  7. Configure Nginx File
  8. Install Joomla File
  9. Test Joomla

     1. Prerequisites

Before you start the installation of Joomla with (LEMP) stack on Centos 7 VPS, you must have one Centos 7 VPS with root privileges on it or you can use sudo for non-root user.  

 You should also run basis command on server to check the following things-:

# df -h (To check the disk space on the system.)

# cat /etc/os-release (To verify the version of the VPS.)

# yum -y update (To update all the packages of the VPS)

  1. Install MySQL 8.0

    Joomla uses a MySQL database for storage, MySQL is used in stack for storing user details in database.

For installing MySQL on Centos 7 first you need to enable MySQL repository and then you can install MySQL.

    # yum localinstall  -y https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

The command used for installing MySQL in CentOS 7 VPS is as follows:

    # yum install mysql-server -y

Then check the MySQL version by typing following command:

    # mysql -V(‘V’ is in uppercase)

After the installation is completed MySQL will start automatically and you can check it’s status by typing:

    # systemctl status mysqld

If MySQL is not start automatically you can write the following command:

    # systemctl start mysqld

Before going for the next step you should generate a temporary password to access MySQL root user with the following command:

    # grep ‘temporary password’ /var/log/mysqld.log

Now configure the MySQL secure installation to improve the security by typing the following commands.

# mysql_secure_installation

Login with the temporary password and assign new password, after that in this configuration it ask several questions you can give Y or N according to your requirement.

Change the password for root ? N

Remove anonymous users? Y

Disallow root login remotely? Y

Remove test database and access to it? Y

Reload privilege tables now? Y

  1. Configure Database in MySQL

     Now create database for Joomla in MySQL for that first login with MySQL server by using the following command:

    # mysql -u root -p

And give its password, after that create database in it with the command:

mysql> CREATE DATABASE joomla;

You can also check that database is created or not with the command:

mysql> SHOW  DATABASES;

Now create user and assign him password by using command:

    mysql> CREATE USER ‘joomla’@’localhost’ IDENTIFIED 

BY ‘Password’;

After that grant all privileges to the user created under that database with the command:

mysql> GRANT ALL ON  joomla.* TO ‘joomla’@’localhost’;       

Then flush all privileges on MySQL server with the command:

    mysql> FLUSH PRIVILEGES;

Now exit from the MySQL server you can use commands:

    mysql> exit;

    mysql> \q;

Note-: In MySQL you must end each command with a semicolon(;).

   4. Install & Configure PHP 7.2

    PHP is used by Joomla to do various functions done by PHP like calling plugin, calling theme, validating user permissions, checking option, grab from database, etc.

In this Blog we are using PHP 7.2 versionand install it with epel-release with remi repository.

Firstly, install yum-utils packages using the following command:

    # yum -y install yum-utils

After that, install epel-release package by using command:

    # yum -y install epel-release

Then import remi repository from the command:

    # yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Enable the remi repository by typing:

    # yum-config-manager –enable remi-php72

After that install PHP and all required modules by using command:

    # yum -y install php-fpm php-mysql php-mbstring php-xml      php-gd php-cli php-json php-opcache php-curl

Now after the installation completed you can check the PHP version with the command:

# php -v (‘v’ is in smallcase)

 

To be Continued…….

Webmin

Webmin is the popular web-based systems management UI for Linux, Unix, MacOS systems, Webmin makes management and delegation of most common system administration tasks available in a friendly web-based UI. Webmin manages users and groups, databases, BIND, Apache, Postfix, Sendmail, QMail, backups, firewalls, monitoring, and alerts, etc.

 

Virtualmin

Virtualmin is a web hosting control panel, designed to make it easy to manage websites, mailbox users, databases, and web applications. Installing Virtualmin provides a full-featured web hosting stack with web, email, databases, spam and antivirus filtering, analytics, etc.

 

Prerequisite
Automated installation requires a freshly installed OS.

Minimum 1GB RAM and more is better.

Minimum 1GB Free Disk Space.

Should have Root access or can use Sudo.

 

Configure Hostname
1) Confirm that your VPS server has a fully qualified domain name set as the hostname.

Configure hostname with the help of this command:

    # hostnamectl set-hostname FQDN


2) Let’s start with the installation. First of all, log in to your Linux server as user root.

Before proceeding any further, start a screen session using this command:

# screen -R

Note: If this command does not work then Install screen using this command:

     On RPM based systems use this command

# yum install screen

     On Debian based systems use the following command

# apt-get install screen


3) Now, we need to update the system. It is very important for all packages to be up to date because many packages in Virtualmin depend on the OS packages.

On RPM based systems you can upgrade the packages using the command:

# yum -y update

On Debian based systems use the following command:

# apt-get update


4) Go to Virtualmin’s official website and download the install script.

# wget http://software.virtualmin.com/gpl/scripts/install.sh

Note: If this command not works then Install wget using this commands:

On RPM based systems you can upgrade the packages using the command:

# yum -y install wget

On Debian based systems use the following command:

# apt-get install wget


5) Make the script executable 

# chmod +x install.sh


6) And run the installer

# ./install.sh

 

The install.sh has a number of options that can be used to perform a particular type of installation. The usage (–help) output describes the available options:

–uninstall|-u – Removes all Virtualmin packages (do not use on a production system)

–help|-h – This message

–force|-f – Skip confirmation message

–hostname|-h – Set fully qualified hostname

–verbose|-v – Verbose

–setup|-s – Setup software repositories and exit (no installation or configuration)

–minimal|-m – Install a smaller subset of packages for low-memory/low-resource systems

–bundle|-b <name> – Choose bundle to install (LAMP or LEMP, defaults to LAMP)

 

LAMP vs. LEMP

The Virtualmin install script can setup Apache or Nginx. The default, and best-tested and most feature-complete, is Apache. But, if you prefer Nginx, you can install a bundle with the LEMP stack instead of the LAMP stack. Use the –bundle LEMP option for Nginx.

 

Once the installation is completed navigate your web browser to https://youriPaddress:1000  to open the control panel. Log in using the root user to finish the post-installation setup wizard.

Settings root password

To access Virtualmin from the browser, we need to set root password for that you can use the following command:

If you are log in with root user simply type, 

# passwd

It will ask for the new password.

If you are log in with other user use sudo,

$ sudo passwd root

It will ask for the new password.

 

CONCLUSION

In this post, you will able to learn how to install Virtualmin and what is the difference between Webmin and Virtualmin.

Get started with CloudMinister Today