PHP7与其他版本共存安装且为PHP7安装redis、event扩展

2022-10-11 21:00:18 198 0
魁首哥

系统环境:

centos6.9

centos 安装PHP7并且与其他版本共存

wget -c -Ophp-7.1.5.tar.gz 
tar -xvf php-7.1.5.tar.gz
cd php-7.1.5
 

在安装之前首先要搞定一些依赖,不过有一些依赖我在安装PHP5.6.30的时候都安装过了,还有少数部分依赖没有安装,那么我也给出全新的依赖谁让我们是伸手党,安装过了重新安装也没啥

yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel
 

上面的依赖安装好后,那么就是配置一下PHP7 要安装的路径与开启的模块等, 这里要说一下与mysqlq链接的配置,默认的一个配置的路径是 –with-mysql-sock=/tmp/mysql.sock

这是默认路径,在确保mysql启动的状态下看看 这个mysql.sock在不,如果不存在,使用下面命令找一下

find / -name mysql.sock
 

应该会显示具体的路径,然后把 地址 替换了上面的配置的地址,如果是阿里云主机有RDS数据库或有专用的数据库服务器,那个参数就可以直接干掉,当然你创建一个软链接也是可以的。

#./configure \
--prefix=/usr/local/php7 \
--exec-prefix=/usr/local/php7 \
--bindir=/usr/local/php7/bin \
--sbindir=/usr/local/php7/sbin \
-- include dir=/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 && make install
 

安装好后,来设置PHP7的配置文件:php.ini php-fpm .conf和php-fpm启动脚本

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
chmod 755 /etc/init.d/php7-fpm
 

上面的命令执行后,来修改一下/usr/local/php7/etc/php-fpm.d目录下的www.conf里的 listen = 127.0.0.1:9000为listen = 127.0.0.1:9001

如果有老版本的php-fpm使用了9000端口,那么PHP7的fpm端口要修改成9001,具体你自己定

把php7-fpm加入开机启动

chkconfig --add php7-fpm
chkconfig php7-fpm on
 

启动php7-fpm

service php7-fpm start
service php7-fpm stop
service php7-fpm restart
service php7-fpm reload
# 说明
start,启动PHP的FastCGI进程
stop,强制终止PHP的FastCGI进程
quit,平滑终止PHP的FastCGI进程
restart, 重启PHP的FastCGI进程
reload, 重新加载PHP的php.ini
logrotate, 重新启用log文件
 

PHP7-fpm重动完成后,来配置一个nginx可以使用PHP7

fastcgi_pass 127.0.0.1:9001;
 

PHP7安装 redis

phpredis在php7、php5下都有不同的版本,装岔了可能会编译报错,所以在安装之前请先看下自己的PHP是啥版本。

我的Redis装的是redis3.2.3版本。

用phpinfo()查看安装的php信息。

确认是php7后开始安装。

下载地址: git clone (现已支持PHP7)

然后进入文件的目录,开始重新编译phpize:

cd phpredis
/usr/local/php7/bin/phpize
./configure --with-php-config=/usr/local/php7/bin/php-config
 

注意这个php-config文件有的版本是在/usr/local/php/bin下,装的时候多找找

make && make install
 

最后在/usr/local/php7/etc/php.ini 里面加入:extension=redis.so php. ini文件 也是藏匿在lib、etc、bin这仨之一,装的时候多找找

重启HTTP应用程序如:nginx

这时候再次打开phpinfo()页面,搜索redis即能找到redis扩展已安装。

[附加说明:如果是php7.2以上 mcrypt扩展默认被移除,需要自动安装]

如果以上方法不行,参考下面步骤处理

从 mcrypt库地址 下载适用版本,然后解压

最后配置php的扩展配置,同redis.so配置,添加extension=mcrypt.so到php.ini文件里即可。

收藏
分享
海报
0 条评论
198
上一篇:茄子面条卤的做法(茄子丁打卤面的做法) 下一篇:现在还有棚户区改造吗(2020棚户区改造叫停后房价会降吗)

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码