0、编译php需要安装依赖
yum install -y make cmake gcc gcc-c++ autoconf automake libpng-devel libjpeg-devel zlib libxml2-devel ncurses-devel bison \ libtool-ltdl-devel libiconv libmcrypt mhash mcrypt pcre-devel openssl-devel freetype-devel libcurl-devel
1、到php官网http://php.net/get/php-7.1.9.tar.gz/from/a/mirror下载镜像
2、到/usr/local/src
运行 wget http://php.net/get/php-7.1.9.tar.gz/from/a/mirror命令
更改名称 mv mirror php-7.1.9.tar.gz
解压 tar zxvf php-7.1.9.tar.gz
3、cd php-7.1.9中
4、查看编译参数用 ./configure --help
5、编译参数配置(注意:配置项后有一个空格)
./configure --prefix=/usr/local/php7 \ #指定 php 安装目录
--enable-maintainer-zts=/usr/local/php7/etc \
--with-curl \ #打开curl浏览工具的支持
--with-freetype-dir \ #支持某些开源字体
--with-gd \ #打开gd库的支持
--enable-gd-native-ttf \ #支持gd字体
--with-gettext \ #打开gnu 的gettext 支持,编码库用到
--with-iconv-dir \
--with-kerberos \
--with-libdir=lib64 \
--with-libxml-dir \ #打开libxml2库的支持
--with-mysqli \ #打开mysqli支持
--with-mysql \ #打开mysql支持
--with-openssl \ #打开openssl支持,加密传输https时用到的
--with-pcre-regex \
--with-pdo-mysql=mysqlnd \
--with-pdo-sqlite \ #打开sqlite的pdo支持
--with-pear \ #打开pear命令的支持,PHP扩展用的
--with-jpeg-dir \ #打开对jpeg图片的支持
--with-png-dir \ #打开对png图片的支持
--with-xmlrpc \ #打开xml-rpc的c语言
--with-xsl \ # 打开XSLT 文件支持,扩展了libXML2库 ,需要libxslt软件
--with-zlib \ #打开zlib库的支持
--enable-fpm \ #打开ftp的支持
--enable-bcmath \ #打开图片大小调整,用到zabbix监控的时候用到了这个模块
--enable-libxml \
--enable-inline-optimization \ #优化线程
--enable-mbregex \
--enable-mbstring \ #多字节,字符串的支持
--enable-opcache \
--enable-pcntl \
--enable-shmop \ #这样就使得你的PHP系统可以处理相关的IPC函数了
--enable-soap \
--enable-sockets \ #打开 sockets 支持
--enable-sysvsem \ #这样就使得你的PHP系统可以处理相关的IPC函数了
--enable-xml \ #打开xml支持
--enable-zip \ #打开对zip的支持
--enable-pdo \ #打开pdo支持
--enable-mysqlnd
6、编译遇到的问题:
(1)configure: error: png.h not found.
解决方法:
经查资料说是libpng,devel包没安装,
执行下面两条命令即可解决
yum install libpng
yum install libpng-devel
然后重新编译安装就行了
(2)configure: error: xslt-config not found. Please reinstall the libxslt >= 1.1.0 distribution
解决方法:
yum -y install libxslt-devel
(3)configure: error: freetype-config not found.
解决方法:
yum -y install freetype-devel
7、make && make install
参考资料:http://www.cnblogs.com/sweetXiaoma/p/5855732.html
8、到/usr/local/php7启动php进程
>./sbin/php-fpm
这个错误是报/usr/local/php7/etc/ 没有找到php-fpm.conf文件
解决方法:
(1)cd etc/ 查看是否有php-fpm.conf文件
(2) 复制默认的php-fpm.conf.default 为php-fpm.conf
9、在/usr/local/php7 下再次启动php进程
解决方法:
到/usr/local/php/etc/php-fpm.d下查看有无.conf 文件
mv www.conf.default www.conf
10、再次启动/usr/local/php7/sbin/php-fpm