07月16, 2018

Ubuntu16.04 编译安装PHP7.2.4

一、下载源码

wget http://cn.php.net/distributions/php-7.2.4.tar.gz


二、解压源码

tar -zxvf php-7.2.4.tar.gz


三、编译

1、配置

./configure --prefix=/usr/local/php \
 --with-curl \
 --with-freetype-dir \
 --with-gd \
 --with-gettext \
 --with-iconv-dir \
 --with-kerberos \
 --with-libdir=lib64 \
 --with-libxml-dir \
 --with-mysqli \
 --with-openssl \
 --with-pcre-regex \
 --with-pdo-mysql \
 --with-pdo-sqlite \
 --with-pear \
 --with-png-dir \
 --with-xmlrpc \
 --with-xsl \
 --with-zlib \
 --enable-fpm \
 --enable-bcmath \
 --enable-libxml \
 --enable-inline-optimization \
 --enable-mbregex \
 --enable-mbstring \
 --enable-opcache \
 --enable-pcntl \
 --enable-shmop \
 --enable-soap \
 --enable-sockets \
 --enable-sysvsem \
 --enable-xml \
 --enable-zip


配置过程错误解决方法:

1、libxml2 configure: error: xml2-config not found. Please check your libxml2 installation.
apt-get install libxml2-dev
 
2、configure: error: Cannot find OpenSSL's libraries
apt-get install pkg-config libssl-dev openssl
 
3、checking for cURL 7.10.5 or greater... configure: error: cURL version 7.10.5 or later is required to compile php with cURL support
apt-get install libcurl4-gnutls-dev curl
 
4、configure: error: png.h not found.
apt-get install libpng-dev
 
5、configure: error: freetype-config not found.
apt-get install libfreetype6-dev
 
6、configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
apt-get install libxslt1-dev

也可以在配置前直接执行:

apt-get install libxml2-dev pkg-config libssl-dev openssl libcurl4-gnutls-dev curl libpng-dev libfreetype6-dev libxslt1-dev


2、编译安装

make & make install


四、配置PHP

1、

vim ~/.bash_aliases

写入信息

alias php='/usr/local/php/bin/php'
alias phpize='/usr/local/php/bin/phpize'
alias php-fpm='/usr/local/php/sbin/php-fpm'

使设置生效

source ~/.bash_aliases


2、

cp php.ini-development /usr/local/php/lib/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 

cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

chmod +x /etc/init.d/php-fpm

update-rc.d php-fpm defaults


3、修改www.conf配置

vim /usr/local/php/etc/php-fpm.d/www.conf
user = www-data
group = www-data
 
listen = /run/php/php7.0-fpm.sock
 
listen.owner = www-data
listen.group = www-data
 
pm.max_requests = 5000

注:需要创建/run/php目录

mkdir /run/php


4、修改php.ini配置

vim /usr/local/php/lib/php.ini
post_max_size = 100M
upload_max_filesize = 80M
date.timezone = PRC


五、启动php-fpm

service php-fpm start


本文链接:https://lxyit.com/article/show/133.html

-- EOF --