联系QQ 284710375
首页 > 技术分享 > LNMP|WAMP
收藏

CentOS编译安装PHP72017-08-24 22:34:13

大潇博客 原创文章,转载请标明出处

本文所讲在CentOS6和CentOS7中均可成功安装

1、首先打开/usr/local/目录
创建php文件夹并打开:
mkdir php  
cd php

2、下载PHP7编译安装包,可直接总官网下载,本博客也提供下载链接(可能较慢),版本php7.2
wget http://boke.daxiaokj.cc/uploadfile/lnmp/php-7.0.21.tar.gz

3、解压下载的安装包,并打开解压后的文件夹
tar -zxvf php-7.0.21.tar.gz
cd php-7.0.21

4、首先查看安装帮助
./configure   --help

5、进行安装前的相关配置

./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-gd-native-ttf \
 --enable-mbregex \
 --enable-mbstring \
 --enable-opcache \
 --enable-pcntl \
 --enable-shmop \
 --enable-soap \
 --enable-sockets \
 --enable-sysvsem \
 --enable-xml \
 --enable-zip
注意:此步是容易出错的步骤,如果报错,请根据错误提示安装相应模块依赖库文件,并反复执行此条命令,直到成功为止,以下是经常出现的错误以及解决办法

configure: error: xml2-config not found. Please check your libxml2 installation.
提示有一个lib库没安装
解决方法:
yum -y install libxml2-devel

configure: error: Please reinstall the libcurl distribution - easy.h should be in/include/curl/

这是curl的dev包没有安装

解决方法:

yum -y install curl-devel


configure: error: png.h not found.

这是libpng,devel包没安装

解决方法:

yum install libpng

yum install libpng-devel


configure: error: freetype-config not found.

补充依赖包即可

解决方法:

yum install freetype-devel


configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution

这是没安装libxslt libxslt-devel软件包

解决方法:

yum -y install libxslt libxslt-devel


configure: error: Cannot find OpenSSL's 或 configure: error: Cannot find OpenSSL's

这是没安装openssl包

解决方法:

yum install openssl openssl-devel



6、编译
make
编译完成提示‘make test’,为了保证代码正确执行,所以要对编译结果进行测试,一般来讲编译结果不会出错,且此步比较费时间,只是建议并非必须,可略过。


7、安装
make install

8、配置文件
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 -R ./sapi/fpm/php-fpm /etc/init.d/php-fpm

需要注意的是php7中www.conf这个配置文件配置phpfpm的端口号等信息,如果你修改默认的9000端口号需在这里改,再改nginx的配置

9、启动、停止(重启先停止再启动)
/etc/init.d/php-fpm
killall php-fpm

把nginx.conf中PHP配置前的#号全部去掉,修改其默认的fastcgi_param为:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
这个配置的意思是 在浏览器中访问的.php文件,实际读取的是 $document_root(网站根目录)下的.php文件 -- 也就是说当访问127.0.0.1/index.php的时候,需要读取网站根目录下面的index.php文件,如果没有配置这一配置项时,nginx不回去网站根目录下访问.php文件,所以返回空白
保存后重载nginx

编辑配置文件
vi /usr/local/php/lib/php.ini

在根目录中新建phpinfo.php,echo phpinfo(),查看PHP信息


有人做过测试,PHP7性能是PHP5的3倍之多,所以PHP7代替PHP5也是很快的事

安装完成,如有疑问请留言


打赏

阅读排行

大家都在搜

博客维护不易,感谢你的肯定
扫码打赏,建议金额1-10元
  • 15601023311