Linux PHP 7.2.11源码编译安装

说明:

  • 安装php版本为7.2.11
  • php解压后工作空间目录:/data/workspace/php
  • php安装目录:/data/soft/php

1、下载并解压PHP源码

# 下载
wget http://cn2.php.net/distributions/php-7.2.11.tar.gz
# 解压
tar zxf php-7.2.11.tar.gz -C /data/workspace
mv php-7.2.12 php
cd php

2、安装所需依赖和工具

apt-get install libxml2-dev libssl-dev libcurl4-gnutls-dev libwebp-dev libjpeg-dev libpng-dev libmcrypt-dev libicu-dev

3、配置

可以通过./configure --help查看所有配置项及配置项说明

./configure --prefix=/data/soft/php \
--exec-prefix=/data/soft/php \
--enable-fpm \
--with-fpm-user=www-data \
--with-fpm-group=www-data \
--with-openssl \
--with-pcre-dir \
--with-pcre-regex \
--with-pcre-jit \
--with-zlib \
--enable-bcmath \
--enable-calendar \
--with-curl \
--enable-exif \
--enable-intl \
--enable-mbstring \
--enable-pcntl \
--with-pdo-mysql=/data/soft/mysql \
--with-mysqli=/data/soft/mysql/bin/mysql_config \
--with-mysql-sock=/data/soft/mysql/mysql.sock \
--enable-soap \
--enable-sockets \
--with-xmlrpc \
--enable-zip \
--with-gd \
--with-webp-dir \
--with-jpeg-dir \
--with-png-dir \
--with-libxml-dir
  • 如果配置提示Cannot find OpenSSL's libraries,则表示无法找到libssl.so

可以通过命令搜索定位libssl.so文件,并创建连接到/usr/lib

find / -name libssl.so
# x86_64
ln -s /usr/lib/x86_64-linux-gnu/libssl.so  /usr/lib
# i386
ln -s /usr/lib/i386-linux-gnu/libssl.so /usr/lib
ln -s  /usr/include/x86_64-linux-gnu/curl  /usr/include/curl

4、编译并安装

make
make install

5、配置文件

PHP 7正常运行需要相关的配置,主要配置文件有:php.iniphp-fpm.confwww.conf,这些配置文件php没有直接提供,但是提供了默认参考项,我们只需要将其复制更改下名称即可。

# php.ini
cp php.ini-production /data/soft/php/lib/php.ini
# php-fpm.conf
cp /data/soft/php/etc/php-fpm.conf.default /data/soft/php/etc/php-fpm.conf
# www.conf
cp /data/soft/php/etc/php-fpm.d/www.conf.default /data/soft/php/etc/php-fpm.d/www.conf

配置:php.ini

# 隐藏头部的php及相应版本信息
# 默认设置在浏览器响应头会有X-Powered-By: PHP/x.x.x
expose_php = Off

配置:php-fpm
vim /data/soft/php/etc/php-fpm.conf

;error_log = log/php-fpm.log 
;include=/usr/local/php/etc/php-fpm.d/*.conf
如果有注释,就去掉前面的注释【;】

配置:www.conf
vim /data/soft/php/etc/php-fpm.d/www.conf
将配置文件中的 user 和 group 部分的 nobody 改成 www-data

6、启动php-fpm

/data/soft/php/sbin/php-fpm

这样我们就完成php的编译安装,并启动。接下来我们可以通过配置nginx,然后添加PHP文件查看phpinfo()查看php信息。

<?php
    phpinfo(); 
?>

参考文章:

标签: none

添加新评论