Home  >  Article  >  Backend Development  >  Detailed tutorial on compiling and installing PHP7 on CentOS7 (pictures and text)

Detailed tutorial on compiling and installing PHP7 on CentOS7 (pictures and text)

不言
不言forward
2019-03-02 13:24:203017browse

This article brings you a detailed tutorial (pictures and text) on compiling and installing PHP7 on CentOS7. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

Use the compiled method to install PHP 7.

Install compilation tools and dependency packages

Input yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt -devel mhash gd gd-devel to install, you can adjust it according to your actual situation.

Download and decompress the installation package

Then download the installation package and choose according to your needs. After downloading, unzip it

Detailed tutorial on compiling and installing PHP7 on CentOS7 (pictures and text)

Configuration and compilation

You can use ./configure --help to see what configuration options are available, and you can also check the reference materials below articles in. Select the decompressed directory `/usr/local/src/php-7.2.12
` and modify several configurations as examples, as follows
./configure --prefix=/usr/local/php --enable -ftp --enable-zip --enable-fpm --with-pdo-mysql --with-jpeg-dir --with-png-dir --with-gd --with-curl --enable-mbstring -- enable-bcmath --enable-sockets

Detailed tutorial on compiling and installing PHP7 on CentOS7 (pictures and text)

##Next is

make && make install

Detailed tutorial on compiling and installing PHP7 on CentOS7 (pictures and text)

An episode, the error message is virtual exhausted memory: Cannot allocate memory.

Increase virtual memory

1. dd if=/dev/zero of=/swap bs=1024 count=204800 2. mkswap /swap 3. swapon /swap free view, swap is no longer 0 compile After completion, you can swapoff /swap
The solution comes from here.

Create the configuration file

Create the configuration file, copy it to the correct location, and execute

cp php.ini-development /usr/local/php/etc/ php.ini

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/ php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d//www.conf

Modify /usr/local/php/ext/php-fpm. The content of pid in conf, pid=/usr/local/php/var/run/php-fpm.pid

Add into system service

Introduced before adding System services and startup will not be introduced here. Add the php-fpm.service file in the /usr/lib/systemd/system directory. The content is as follows

[Unit]
Description=The PHP FastCGI Process Manager
After=syslog.target network.target

[Service]
Type=simple
PIDFile=/usr/local/php/var/run/php-fpm.pid
ExecStart=/usr/local/php/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID

[Install]
WantedBy=multi-user.target
After the addition is completed, you can use systemctl daemon-reload to update it, and then enter systemctl start php-fpm to open it. Serve. The last step is to add startup, enter systemctl enable php-fpm to set startup.

Modify Nginx configuration

The last step is to modify the Nginx configuration file

Detailed tutorial on compiling and installing PHP7 on CentOS7 (pictures and text)

Detailed tutorial on compiling and installing PHP7 on CentOS7 (pictures and text)

Detailed tutorial on compiling and installing PHP7 on CentOS7 (pictures and text)

The above is the detailed content of Detailed tutorial on compiling and installing PHP7 on CentOS7 (pictures and text). For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:segmentfault.com. If there is any infringement, please contact admin@php.cn delete