欢迎光临
专业Linux运维二十年

Centos7.2 编译安装PHP7.0.2的步骤

环境

  1. 系统:Centos7.2 
  2. 服务:Nginx

1:下载PHP7.0.2的安装包解压,编译,安装:

?
1
2
3
4
$
cd
/usr/src/
$ wget http:
//cn2
.php.net
/distributions/php-7
.0.2.
tar
.gz
$
tar
-xzxvf php-7.0.2.
tar
.gz
$
cd
php-7.0.2

1.1编译前检查

请检查是否安装了gcc ,没有的话执行yum install gcc

检查是否安装了libxml2 ,没有的话执行yum install libxml2

检查是否安装了libxml2-devel,没有的话执行yum install libxml2-devel

注:因为改为用nginx了,所以编译参数中的–with-apxs2=/usr/bin/apxs去掉了,如果要配置apache用,安装PHP前,请先安装apache。*

2:编译参数配置

 

复制代码 代码如下:

‘./configure’ ‘–prefix=/usr/local/php’ ‘–with-pdo-pgsql’ ‘–with-zlib-dir’ ‘–with-freetype-dir’ ‘–enable-mbstring’ ‘–with-libxml-dir=/usr’ ‘–enable-soap’ ‘–enable-calendar’ ‘–with-curl’ ‘–with-mcrypt’ ‘–with-gd’ ‘–with-pgsql’ ‘–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-pdo-mysql’ ‘–with-mysqli’ ‘–with-jpeg-dir=/usr’ ‘–with-png-dir=/usr’ ‘–enable-gd-native-ttf’ ‘–with-openssl’ ‘–with-fpm-user=www-data’ ‘–with-fpm-group=www-data’ ‘–with-libdir=/lib/x86_64-linux-gnu/’ ‘–enable-ftp’ ‘–with-gettext’ ‘–with-xmlrpc’ ‘–with-xsl’ ‘–enable-opcache’ ‘–enable-fpm’ ‘–with-iconv’ ‘–with-xpm-dir=/usr’

 

3:错误集合

?
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
30
报错 Cannot find OpenSSL's <evp.h>
 
执行 yum install openssl openssl-devel
 
报错 Please reinstall the libcurl distribution
 
执行 yum -y install curl-devel
 
错误 jpeglib.h not found
 
执行 yum install libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64 -y
 
和执行 yum install libjpeg-devel
 
错误:checking for BZip2 in default path... not found configure: error: Please reinstall the BZip2 distribution 这是bzip2软件包没有安装
 
执行 yum install bzip2-devel.x86_64 -y
 
错误:configure: error: xpm.h not found.
 
执行 yum install libXpm-devel
 
错误: Unable to locate gmp.h
 
执行 yum install gmp-devel
 
错误:Unable to detect ICU prefix or /usr//bin/icu-config failed. Please verify ICU install prefix and make sure icu-config works
 
执行 yum install -y icu libicu libicu-devel
 
错误:mcrypt.h not found. Please reinstall libmcrypt.
 
执行 yum install php-mcrypt libmcrypt libmcrypt-devel
 
错误: configure: error: Cannot find libpq-fe.h. Please specify correct PostgreSQL installation path
 
执行 yum install postgresql-devel
 
错误: configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
 
执行 yum install libxslt-devel

4:编译

?
1
make
clean &&
make
&&
make
install

5:PHP配置

5.1安装完成后,我们要把源码包中的配置文件复制到PHP安装目录下,源码包中有两个配置 php.ini-development php.ini-production ,看名字就知道,一个是开发环境,一个是生产环境,我们这里就复制开发环境的

?
1
cp
php.ini-development
/usr/local/php/lib/php
.ini

5.2另外还需要设置环境变量 :修改/etc/profile文件使其永久性生效,并对所有系统用户生效,在文件末尾加上如下两行代码

?
1
2
PATH=$PATH:
/usr/local/php/bin
export
PATH

5.3 然后执行生效命令

?
1
source
/etc/profile

5.4查看PHP版本信息

?
1
php -
v

6:配置PHP-fpm

?
1
2
3
4
5
6
7
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
/usr/src/php-7
.0.2
/sapi/fpm/init
.d.php-fpm
/etc/init
.d
/php-fpm
 
chmod
+x
/etc/init
.d
/php-fpm

6.1 启动php-fpm:

?
1
/etc/init
.d
/php-fpm
start

6.2 如果出现错误:ERROR: [pool www] cannot get uid for user ‘www-data’

则新建www-data 用户组:

?
1
2
groupadd www-data
useradd -g www-data www-data

6.3 重启php-fpm

?
1
/etc/init
.d
/php-fpm
restart

脚本之家
赞(0) 打赏
未经允许不得转载:Linux老运维 » Centos7.2 编译安装PHP7.0.2的步骤

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫