How to install php in centos7: 1. Install the wget command; 2. Download the php source code package in the "/usr/local/src" directory; 3. Install the dependency packages needed to compile php.
The operating environment of this article: centos7 system, PHP7.2 version, DELL G3 computer
centos7 installation php detailed explanation
Centos7 Compile and install PHP7.2
1. Install the wget command
yum install wget
2. Download the php source code package in the /usr/local/src directory
wget http://cn2.php.net/distributions/php-7.2.4.tar.gz
Unzip the source package
tar zxvf php-7.2.1.tar.gz
3. Install the dependency packages needed to compile php:
yum install gcc autoconf gcc-c++ yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel readline readline-devel libxslt libxslt-devel yum install systemd-devel yum install openjpeg-devel
Add php-fpm user
Create group
groupadd php-fpm
Create a user, do not allow login and do not create a home directory
useradd -s /sbin/nologin -g php-fpm -M php-fpm
Compilation parameters:
开发环境: --enable-phpdbg\ --enable-dtrace\ 生产环境: --disable-phpdbg\ --disable-dtrace\ ./configure \ --prefix=/usr/local/php \ --with-config-file-path=/usr/local/php/etc \ --with-zlib-dir \ --with-freetype-dir \ --enable-mbstring \ --with-libxml-dir=/usr \ --enable-xmlreader \ --enable-xmlwriter \ --enable-soap \ --enable-calendar \ --with-curl \ --with-zlib \ --with-gd \ --with-pdo-sqlite \ --with-pdo-mysql \ --with-mysqli \ --with-mysql-sock \ --enable-mysqlnd \ --disable-rpath \ --enable-inline-optimization \ --with-bz2 \ --with-zlib \ --enable-sockets \ --enable-sysvsem \ --enable-sysvshm \ --enable-pcntl \ --enable-mbregex \ --enable-exif \ --enable-bcmath \ --with-mhash \ --enable-zip \ --with-pcre-regex \ --with-jpeg-dir=/usr \ --with-png-dir=/usr \ --with-openssl \ --enable-ftp \ --with-kerberos \ --with-gettext \ --with-xmlrpc \ --with-xsl \ --enable-fpm \ --with-fpm-user=php-fpm \ --with-fpm-group=php-fpm \ --with-fpm-systemd \ --disable-fileinfo
Execute compilation:
make && make install php-ini:
Source code There is a configuration file in the package:
php.ini-development 测试开发环境 php.ini-production 生产环境
Copy a copy to the specified directory (choose according to your own situation, you can compare the differences between the two files):
cp php.ini-production /usr/local/php/etc/php.ini
php-fpm Copy a new php-fpm configuration file:
cd /usr/local/php/etc cp php-fpm.conf.default php-fpm.conf vim php-fpm.conf
Configuration error log:
error_log = /usr/local/php/var/php-fpm.log
Configuration pid file:
pid = /usr/local/php/var/run/php-fpm.pid
Save and exit
cd /usr/local/php/etc/php-fpm.d cp www.conf.default www.conf
Management php-fpm configuration:
cd /usr/local/src/php-7.2.4
cp ./sapi/fpm/php-fpm.service Go to /usr/lib/systemd/system/
Configure boot to start php-fpm:
systemctl enable php-fpm
Start php-fpm:
systemctl start php-fpm
View status:
systemctl status php-fpm
Add environment variables:
vim /etc/profile
Append at the end:
export PATH=$PATH:'/usr/local/php/bin/'
Save quit.
source /etc/profile
Test:
php -v
Seeing this means it has been successful.
If you need to distinguish between web and cli environments, you can copy /usr/local/php/etc/php.ini and rename it to php-cli.ini
cp /usr/local/php/etc/php.ini /usr/local/php/etc/php-cli.ini
Need to adjust the configuration, just Just make adjustments in their respective configuration files.
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of Centos7 installation php detailed explanation. For more information, please follow other related articles on the PHP Chinese website!