10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
Install PHP 7 on CentOS 7
Updated Jan 23, 2019 • 5 min read
CentOS 7 ships with PHP version 5.4 which has been officially EOL for quite some time and is no
longer supported.
By using PHP 7 your applications will load faster and consume less system resources.
In this tutorial, we will explain how to install or upgrade to PHP 7.0. 7.1, 7.2 and 7.3 on a CentOS 7
system. We’ll also show you how to integrate PHP with Nginx and Apache.
Also prior to installing a specific PHP 7.x version make sure that it is supported by your application.
Prerequisites
[Link] 1/11
10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
Before starting with this tutorial, make sure you are logged into your server with a user account
with sudo privileges or with the root user. It is best practice to run administrative commands as
sudo user instead of root. If you don’t have sudo user on your system you can create one by
following these instructions .
Enabling Remi repository
PHP 7.x packages are available in several different repositories. We’ll use the Remi repository which
provides newer versions of various software packages including PHP.
The Remi repository depends on the EPEL repository . Run the following commands to enable both
EPEL and Remi repositories:
$ sudo yum install epel-release yum-utils
$ sudo yum install [Link]
Yum may prompt you to import the repository GPG key. Type y and hit Enter .
In the following sections, we will be covering how to install PHP 7.x by enabling the appropriate
Remi repository. If you already have PHP 5.4 installed on your system yum will update the PHP
packages.
[Link] 2/11
10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
Installing PHP 7.3 on CentOS 7
PHP 7.3 is the latest stable release of PHP. Most modern PHP frameworks and applications
including WordPress , Drupal, Joomla, and Laravel are fully supporting PHP 7.3.
Perform the steps below to install PHP 7.3 on CentOS 7.
01. Start by enabling the PHP 7.3 Remi repository:
$ sudo yum-config-manager --enable remi-php73
02. Install PHP 7.3 and some of the most common PHP modules:
$ sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-
03. Verify the PHP installation, by typing the following command which will print the PHP version :
$ php -v
Output
PHP 7.3.1 (cli) (built: Jan 8 2019 [Link]) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.1, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.1, Copyright (c) 1999-2018, by Zend Technologies
Installing PHP 7.2 on CentOS 7
Use PHP 7.2 only if you’re going to install applications such as Magento 2 that is not compatible
with PHP 7.2.
The following steps describe how to install PHP 7.2 CentOS 7.
[Link] 3/11
10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
01. First enable the PHP 7.2 Remi repository by running the following command:
$ sudo yum-config-manager --enable remi-php72
02. Once the repository is enabled install PHP 7.2 and few most common PHP modules:
$ sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-
03. Verify the PHP installation:
$ php -v
Output
PHP 7.2.9 (cli) (built: Aug 15 2018 [Link]) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.9, Copyright (c) 1999-2018, by Zend Technologies
Installing PHP 7.1 on CentOS 7
Follow the steps below to install PHP 7.1.
01. Enable the PHP 7.1 repository by typing:
$ sudo yum-config-manager --enable remi-php71
02. Install PHP 7.1 and few most common PHP modules:
[Link] 4/11
10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
$ sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-
03. To verify the installation, run the following command which will print the PHP version:
$ php -v
Output
PHP 7.1.21 (cli) (built: Aug 15 2018 [Link]) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.1.21, Copyright (c) 1999-2018, by Zend Technologie
Configuring PHP 7.x to work with Apache
If you are using Apache as your web server then just restart the Apache service using the following
command and you are good to go:
$ sudo systemctl restart httpd
Configuring PHP 7.x to work with Nginx
Unlike Apache, Nginx doesn’t have built-in support for processing PHP files so we need to install a
separate application such as PHP FPM which will handle the PHP files.
[Link] 5/11
10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
To install the PHP FPM package run the following command:
$ sudo yum install php-fpm
By default PHP FPM will run as user apache on port 9000. We’ll change the user to nginx and
switch from TCP socket to Unix socket. To do so edit the lines highlighted in yellow:
/etc/php-fpm.d/[Link]
...
user = nginx
...
group = nginx
...
listen = /run/php-fpm/[Link]
...
[Link] = nginx
[Link] = nginx
Make sure the /var/lib/php directory has the correct ownership :
[Link] 6/11
10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
$ chown -R root:nginx /var/lib/php
Once you made the changes, enable and start the PHP FPM service:
$ sudo systemctl enable php-fpm
$ sudo systemctl start php-fpm
Next, edit the Nginx virtual host directive and add the following location block so that Nginx can
process PHP files:
server {
# . . . other code
location ~ \.php$ {
try_files $uri =404;
[Link] 7/11
10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
fastcgi_pass unix:/run/php-fpm/[Link];
fastcgi_index [Link];
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
For the new configuration to take effect, restart the Nginx service :
$ sudo systemctl restart nginx
Conclusion
You have learned how to install PHP 7 on your CentOS server and how to configure your web server
to be able to handle PHP files.
If you have any questions or feedback, do not hesitate to leave a comment.
php centos
This post is a part of the Install LEMP Stack on CentOS 7 series.
Other posts in this series:
• How to Install Nginx on CentOS 7
• Secure Nginx with Let's Encrypt on CentOS 7
[Link] 8/11
10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
• Install MariaDB on CentOS 7
• Install PHP 7 on CentOS 7
• How to Set Up Nginx Server Blocks on CentOS 7
If you like our content, please consider buying us a coffee.
Thank you for your support!
BUY ME A COFFEE
Sign up to our newsletter and get our latest tutorials and news straight
to your mailbox.
Your email...
Subscribe
[Link] 9/11
10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
Subscribe
We’ll never share your email address or spam you.
Related Articles
NOV 1, 2018
How to Install phpMyAdmin with Nginx on CentOS 7
OCT 5, 2018
How to Install and Secure phpMyAdmin with Apache on CentOS 7
[Link] 10/11
10/28/21, 6:30 PM Install PHP 7 on CentOS 7 | Linuxize
SEP 26, 2018
How to Install and Use PHP Composer on CentOS 7
Show comments (7)
© 2021 [Link]
Privacy Policy Terms Contact Advertise on Linuxize
[Link] 11/11