
Step 1. Setup Yum Repository
In the first step install all the required yum repositories in your system used in remaining tutorial for various installations. You are adding REMI, EPEL, Webtatic & MySQL community server repositories in your system.CentOS / RHEL 7
# yum install epel-release # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm # rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm # rpm -Uvh http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
CentOS / RHEL 6
# yum install epel-release # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm # rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm # rpm -Uvh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
Step 2. Install PHP 7
Now install php 7 packages from webtatic rpm repository using following command.# yum install php70wNow install required php modules. Use following command to list available modules in yum repositories.
# yum search php70wNow check all listed modules in above command and install required modules like below.
# yum install php70w-mysql php70w-xml php70w-soap php70w-xmlrpc # yum install php70w-mbstring php70w-json php70w-gd php70w-mcrypt
Step 3. Install NGINX
NGINX is the popular web server used on Linux systems. Let’s install Nginx web server using following command on your system.# yum install nginxNow start nginx service and enable to start on boot using below commands.
# systemctlenable nginx.service # systemctlstart nginx.service
Step 4. Install MySQL 5.6
In step 1 we already have installed required yum repository in your system. Lets use following command to install MySQL server on your system.# yumYou need to execute mysql_secure_installation once after installation of MySQL server using following command. First it will prompt to set a password for root account, after that ask few questions, I suggest to say yes ( y ) for all.install mysql-server
# systemctlNow restart MySQL service and enable to start on system boot.start mysqld.service # mysql_secure_installation
# systemctlrestart mysqld.service # systemctlenable mysqld.service
Step 5 — Setup PHP-FPM
Now use following command to install php7 fpm package using following command.# yum install php70w-fpm
Step 6 — Create Nginx VirtualHost
Finally do the configuration of Nginx VirtualHost. For this example we are editing default configuration file.$ sudo nano /etc/nginx/conf.d/example.confand make changes as below.
server { listen 80; root /var/www; index index.php index.html index.htm; server_name example.com www.example.com; location / { try_files $uri $uri/ /index.html; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/www; } location ~ .php$ { try_files $uri =404; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }You have to do the same changes in all Virtual Hosts configured.
Step 7 – Restart Services
After installing all services on your system, start all required services.# systemctlrestart nginx.service # systemctlrestart php-fpm.service
Step 8. Open Port in Firewall
Finally open firewall ports for http (80) and https (443) services using following command.# firewall-cmd --permanent --zone=public --add-service=http # firewall-cmd --permanent --zone=public --add-service=https # firewall-cmd --reload
Step 9. Verify Setup
Let’s check the installed versions of packages on system using following commands one by one.#php -v PHP 7.0.2 (cli) (built: Jan 9 2016 14:00:11) ( NTS ) Copyright (c) 1997-2015 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies
#Finally verify installation of PHP 7 with NGINX. Let’s create a file index.php on website document root using following content.nginx -v nginx version: nginx/1.6.3
1 2 3 | <?php phpinfo(); ?> |
Now browse this file in web browser. It will so all the details about version’s and installation.

You have successfully configured LEMP Stack setup on your CentOS / RHEL 7.1 & 6.7 system.
Comments
Post a Comment