Linux下编译安装PHP7.2.14

【准备工作】

所有操作需要在root用户下
本机测试案例系统信息:centos7
安装路径:/usr/local/php

安装依赖,更新内核

1
2
# yum install epel-release -y
# yum update

【安装PHP】

先安装如下依赖包

1
# yum install -y gcc gcc-c++  make zlib zlib-devel pcre pcre-devel  libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss\_ldap openldap-clients openldap-servers

下载PHP7.2.14安装包

# wget http://cn2.php.net/distributions/php-7.2.14.tar.gz

解压php-7.2.14.tar.gz 然后进入目录,编译。命令如下:

1
2
3
# tar -zxvf php-7.2.14.tar.gz
# cd php-7.2.14
# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-mbstring --enable-ftp --with-gd --with-jpeg-dir --with-png-dir --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pear --enable-sockets --with-freetype-dir --with-libxml-dir=/usr --with-xmlrpc --enable-fpm --enable-xml --with-zlib --with-iconv --enable-soap --enable-pcntl --enable-cli --with-curl --with-openssl=/usr/local/Cellar/openssl@1.1/1.1.1f --enable-bcmath

编译完成之后,执行安装命令:

1
2
3
// make如果出现报错,按报错提示安装相应扩展即可
# make
# make install

【配置PHP】

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// 将常用PHP命令添加到环境变量
# ln -sf /usr/local/php/bin/php /usr/local/bin/php
# ln -sf /usr/local/php/bin/phpize /usr/local/bin/phpize
# ln -sf /usr/local/php/bin/php-config /usr/local/bin/php-config
# ln -sf /usr/local/php/bin/pecl /usr/local/bin/pecl
# ln -sf /usr/local/php/sbin/php-fpm /usr/local/bin/php-fpm

// 复制php配置文件到安装目录
# cp php.ini-production /usr/local/php/php.ini

// 删除系统自带配置文件
# rm -rf /etc/php.ini

// 添加软链接到 /etc 目录
# ln -s /usr/local/php/php.ini /etc/php.ini

// 拷贝模板文件为php-fpm配置文件
# 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

// 添加软连接到 /etc 目录
# ln -s /usr/local/php/etc/php-fpm.conf /etc/php-fpm.conf

// 修改php-fpm.conf
pid = run/php-fpm.pid  #取消前面的分号

// 修改php.ini
date.timezone = PRC #设置时区
disable_functions = system,passthru,shell_exec,exec,popen,eval,phpinfo #禁用一些关键函数

评论