Home >Operation and Maintenance >CentOS >How to install php on centos7 yum

How to install php on centos7 yum

藏色散人
藏色散人Original
2020-09-04 09:41:1512297browse

centos7 yum installation method of php: First install and enable EPEL and Remi repositories on the CentOS7 system; then install "yum-utils"; then use the "yum -y install php" command to install PHP and all necessary module; finally start "fpm".

How to install php on centos7 yum

Recommended: "PHP Video Tutorial" "centos Tutorial"

in CentOS 7 The official software repository for PHP 5.4 has reached end of life and is no longer actively maintained by the developers.

To stay up to date with the latest features and security updates, you need to use a newer (possibly the latest) PHP version on your CentOS 7 system.

Install PHP 7 on CentOS 7

Installation necessary

yum -y install gcc gcc-c++

1. To install PHP 7, you must use the following command on CentOS 7 system Install and enable EPEL and Remi repositories.

#yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
#yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

2. Next, you need to install yum-utils, which is a set of useful programs for managing yum repositories and packages. It has tools that basically extend yum's default functionality.

It can be used to manage (enable or disable) yum repositories as well as packages without any manual configuration and so on.

#yum -y install yum-utils

3. One of the programs provided by yum-utils is yum-config-manager, you can use it to enable Remi repository as the default repository for installing different PHP versions, as shown in the figure.

#yum-config-manager --enable remi-php71 [ 安装PHP 7.1 ]
#yum-config-manager --enable remi-php72 [ 安装PHP 7.2 ]
#yum-config-manager --enable remi-php73 [ 安装PHP 7.3 ]

4. Now use the following command to install PHP 7 along with all required modules.

#yum -y install php php-mcrypt php-devel php-cli php-gd php-pear php-curl php-fpm php-mysql php-ldap php-zip php-fileinfo

5. Check the php version

[root@VM_159_140_centos lnmp]# php -v
PHP 7.1.28 (cli) (built: Apr  2 2019 17:49:56) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies

6. Start php-fpm

systemctl start php-fpm

Enable startup

systemctl enable php-fpm.service

View the php.ini file location

[root@VM_159_140_centos ~]# php -ini
phpinfo()
PHP Version => 7.1.28
System => Linux VM_159_140_centos 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64
Build Date => Apr  2 2019 17:49:32
Server API => Command Line Interface
Virtual Directory Support => disabled
Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini
Scan this dir for additional .ini files => /etc/php.d
Additional .ini files parsed => /etc/php.d/20-bz2.ini,
/etc/php.d/20-calendar.ini,
/etc/php.d/20-ctype.ini,
/etc/php.d/20-curl.ini,
/etc/php.d/20-dom.ini,
/etc/php.d/20-exif.ini,
/etc/php.d/20-fileinfo.ini,
/etc/php.d/20-ftp.ini,
/etc/php.d/20-gd.ini,
/etc/php.d/20-gettext.ini,
/etc/php.d/20-iconv.ini,
/etc/php.d/20-json.ini,
/etc/php.d/20-ldap.ini,
/etc/php.d/20-mcrypt.ini,
/etc/php.d/20-mysqlnd.ini,
/etc/php.d/20-pdo.ini,
/etc/php.d/20-phar.ini,
/etc/php.d/20-posix.ini,
/etc/php.d/20-redis.ini,
/etc/php.d/20-shmop.ini,
/etc/php.d/20-simplexml.ini,
/etc/php.d/20-sockets.ini,
/etc/php.d/20-sqlite3.ini,
/etc/php.d/20-sysvmsg.ini,
/etc/php.d/20-sysvsem.ini,
/etc/php.d/20-sysvshm.ini,
/etc/php.d/20-tokenizer.ini,
/etc/php.d/20-xml.ini,
/etc/php.d/20-xmlwriter.ini,
/etc/php.d/20-xsl.ini,
/etc/php.d/30-mysqli.ini,
/etc/php.d/30-pdo_mysql.ini,
/etc/php.d/30-pdo_sqlite.ini,
/etc/php.d/30-wddx.ini,
/etc/php.d/30-xmlreader.ini,
/etc/php.d/40-zip.ini,
/etc/php.d/50-swoole.ini

pecl installation extension preparation

[root@VM_159_140_centos default]# yum -y install php-pear
[root@VM_159_140_centos default]# pecl
Commands:
build                  Build an Extension From C Source
bundle                 Unpacks a Pecl Package
channel-add            Add a Channel
channel-alias          Specify an alias to a channel name
channel-delete         Remove a Channel From the List

................................ ............

pecl install redis

[root@VM_159_140_centos www]# pecl install redis
You should add "extension=redis.so" to php.ini
[root@VM_159_140_centos www]# echo "extension=redis.so;" >> /etc/php.d/20-redis.ini

Error

checking for igbinary includes... configure: error: Cannot find igbinary.h
[root@VM_159_140_centos www]# pecl install igbinary
You should add "extension=igbinary.so" to php.ini
[root@VM_159_140_centos www]# echo "extension=igbinary.so;" >> /etc/php.d/20-redis.ini

The above is the detailed content of How to install php on centos7 yum. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn