centos 安装PHP7并且与其他版本共存@H_301_5@
wget-c-OPHP-7.1.5.tar.gzhttp://cn2.PHP.net/get/PHP-7.1.5.tar.gz/from/this/mirror tar-xvfPHP-7.1.5.tar.gz cdPHP-7.1.5
@H_301_5@
在安装之前首先要搞定一些依赖,不过有一些依赖我在安装PHP5.6.30的时候都安装过了,还有少数部分依赖没有安装,那么我也给出全新的依赖谁让我们是伸手党,安装过了重新安装也没啥@H_301_5@
yuminstalllibxml2libxml2-developensslopenssl-develbzip2bzip2-devellibcurllibcurl-devellibjpeglibjpeg-devellibpnglibpng-develfreetypefreetype-develgmpgmp-devellibmcryptlibmcrypt-develreadlinereadline-devellibxsltlibxslt-devel
上面的依赖安装好后,那么就是配置一下PHP7 要安装的路径与开启的模块等, 这里要说一下与MysqLq链接的配置,默认的一个配置的路径是 --with-MysqL-sock=/tmp/MysqL.sock@H_301_5@
这是默认路径,在确保MysqL启动的状态下看看 这个MysqL.sock在不,如果不存在,使用下面命令找一下@H_301_5@
find/-nameMysqL.sock
@H_301_5@
应该会显示具体的路径,然后把地址替换了上面的配置的地址,如果是阿里云主机有RDS数据库或有专用的数据库服务器,那个参数就可以直接干掉,当然你创建一个软链接也是可以的。@H_301_5@
./configure\ --prefix=/usr/local/PHP7\ --exec-prefix=/usr/local/PHP7\ --bindir=/usr/local/PHP7/bin\ --sbindir=/usr/local/PHP7/sbin\ --includedir=/usr/local/PHP7/include\ --libdir=/usr/local/PHP7/lib/PHP\ --mandir=/usr/local/PHP7/PHP/man\ --with-config-file-path=/usr/local/PHP7/etc\ --with-MysqL-sock=/var/lib/MysqL/MysqL.sock\ --with-mcrypt=/usr/include\ --with-mhash\ --with-openssl\ --with-MysqLi=shared,MysqLnd\ --with-pdo-MysqL=shared,MysqLnd\ --with-gd\ --with-iconv\ --with-zlib\ --enable-zip\ --enable-inline-optimization\ --enable-sockets\ --enable-soap\ --enable-session\ --with-curl\ --enable-opcache\ --enable-fpm\ --with-fpm-user=Nginx\ --with-fpm-group=Nginx\ make&&makeinstall
@H_301_5@
@H_301_5@
安装好后,来设置PHP7的配置文件:PHP.ini PHP-fpm.conf和PHP-fpm启动脚本@H_301_5@
cp./PHP.ini-production/usr/local/PHP7/etc/PHP.ini cp./sapi/fpm/PHP-fpm.conf/usr/local/PHP7/etc/PHP-fpm.conf cp/usr/local/PHP7/etc/PHP-fpm.d/www.conf.default/usr/local/PHP7/etc/PHP-fpm.d/www.conf cp./sapi/fpm/init.d.PHP-fpm/etc/init.d/PHP7-fpm chmod755/etc/init.d/PHP7-fpm
@H_301_5@
上面的命令执行后,来修改一下/usr/local/PHP7/etc/PHP-fpm.d目录下的www.conf里的 listen = 127.0.0.1:9000为listen = 127.0.0.1:9001@H_301_5@
如果有老版本的PHP-fpm使用了9000端口,那么PHP7的fpm端口要修改成9001,具体你自己定@H_301_5@
chkconfig--addPHP7-fpm chkconfigPHP7-fpmon
@H_301_5@
servicePHP7-fpmstart servicePHP7-fpmstop servicePHP7-fpmrestart servicePHP7-fpmreload
@H_301_5@
start,启动PHP的FastCGI进程@H_301_5@
stop,强制终止PHP的FastCGI进程@H_301_5@
quit,平滑终止PHP的FastCGI进程@H_301_5@
restart, 重启PHP的FastCGI进程@H_301_5@
reload, 重新加载PHP的PHP.ini@H_301_5@
PHP7-fpm重动完成后,来配置一个Nginx可以使用PHP7@H_301_5@
fastcgi_pass127.0.0.1:9001;
@H_301_5@
@H_301_5@
@H_301_5@
@H_301_5@
PHPredis在PHP7、PHP5下都有不同的版本,装岔了可能会编译报错,所以在安装之前请先看下自己的PHP是啥版本。@H_301_5@
我的Redis装的是redis3.2.3版本。@H_301_5@
用PHPinfo()查看安装的PHP信息。@H_301_5@
下载地址: https://github.com/PHPredis/PHPredis/archive/PHP7.zip@H_301_5@
复制到/usr/local目录下解压:unzip PHPredis-PHP7.zip@H_301_5@
然后进入解压后的文件的目录,开始重新编译PHPize:@H_301_5@
cdPHPredis-PHP7 /usr/local/PHP/bin/PHPize ./configure--with-PHP-config=/usr/local/PHP/lib/PHP-config
注意这个PHP-config文件有的版本是在/usr/local/PHP/bin下,装的时候多找找
@H_301_5@
make&&makeinstall
最后在/usr/local/PHP/lib/PHP.ini 里面加入:extension=redis.so PHP.ini文件也是藏匿在lib、etc、bin这仨之一,装的时候多找找@H_301_5@
这时候再次打开PHPinfo()页面,搜索redis看能不能找到@H_301_5@
@H_301_5@
大功告成!@H_301_5@