资讯专栏INFORMATION COLUMN

Centos多版本php共存

wmui / 892人阅读

摘要:需求场景服务器有几个较老的应用占用了,且版本不可向上兼容,新的项目需要高版本的才能支持。实现其实比较简单,可以指定端口默认,修改指向对应的端口即可。这里记录种不同的安装方式一种是通过安装,另外一种是从官网下载源码编译安装。

需求场景:服务器有几个较老的应用占用了php,且版本不可向上兼容,新的项目需要高版本的php才能支持。

实现其实比较简单,php-fpm可以指定端口(默认9000),修改nginx fastcgi_pass指向对应的端口即可。

这里记录2种不同的安装方式:一种是通过yum安装,另外一种是从官网下载源码编译安装。

安装php7
# 安装yum源
rpm -ivh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# 查看可安装的版本
yum list | grep php
# 安装指定版本
yum install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysqlnd.x86_64 php70w-pdo.x86_64
# 开启php-fpm
/usr/sbin/php-fpm
# 重启php-fpm
ps aux|grep php-fpm
kill -SIGUSER2 xx(php_master_id)
安装php7.2.19

1.去官网下载压缩包,上传到服务器解压文件,并进入

# 或者直接通过服务器下载源文件安装
wget http://cn2.php.net/distributions/php-7.2.19.tar.gz
# 解压(下面下载文件默认是在usr/local文件夹下)
tar -zxvf php-7.2.19.tar.gz
# 进入
cd php-7.2.19

2.配置安装参数

./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --with-curl --with-freetype-dir=/usr/include/freetype2/freetype --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --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 --disable-fileinfo --disable-inline-optimization

3.编译安装

make && make install

4.生成配置文件

# 生成php.ini
cp php-7.2.19/php.ini-development /usr/local/php7/lib/php.ini
# 生成www.conf
cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
# 生成php-fpm.conf
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf

5.修改php-fpm的端口

vi /usr/local/php7/etc/php-fpm.d/www.conf
# 修改其中的listen 127.0.0.1:9000 端口为9001
# user 和user_group根据情况修改

6.修改nginx配置文件

vi /usr/local/nginx/conf/nginx.conf
# 修改其中某个站点的fastcgi_pass 127.0.0.1:9000 端口为9001

7.开启第二个php-fpm,并重启nginx

/usr/local/php7/sbin/php-fpm
/usr/local/nginx/sbin/nginx -s -reload

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/31784.html

相关文章

  • 虚拟机上Centos7开发环境搭建(编译安装LNMP,版本PHP共存PHP扩展安装)

    摘要:安装系统本次安装的是的最小化版本,以下操作在用户下进行。在搭建完该环境后,笔者使用作为开发,配置使其可以直接调试虚拟机上的代码即开发环境下代码是运行在虚拟机上的。通过该方法,可以最大程度地确保开发环境与生产环境的一致性。 安装系统 本次安装的是Centos7.3的最小化版本,以下操作在root用户下进行。在搭建完该环境后,笔者使用phpstorm作为开发ide,配置phpstorm使其...

    zhangke3016 评论0 收藏0
  • Docker的典型应用场景

    摘要:接下来,执行以下命令把生成的软件包从镜像中复制出来然后目录下就会有我们刚刚制作的包。多版本混合部署随着产品的不断更新换代,一台服务器上部署多个应用或者同一个应用的多个版本在企业内部非常常见。作者魏世江联合创始人,长期从事相关研发工作。 相对于VM,docker在其轻量、配置复杂度以及资源利用率方面有着明显的优势。 随着docker技术的不断成熟,越来越多的企业开始考虑通过docker来...

    anyway 评论0 收藏0
  • 关于iis6.0版本php共存且支持网站级匹配的方法

    摘要:直接讲原文中网站级别支持多版本控制吧这里只写中文吧此外可配置于网站级别,它允许使用不同的版本在不同的站点上,并且必须为指定站点指定一个特定的版本,通常情况下使用下面的命令就可以进行这一设定。 首先放url吧转自别人转的英文原文,不懂英文的先看一遍英文中的代码部分,然后我会在在下面解释 iis6.0 为什么要配置多版本php? 因为现在的许多程序是在php5.2版本下运...

    whlong 评论0 收藏0
  • 关于iis6.0版本php共存且支持网站级匹配的方法

    摘要:直接讲原文中网站级别支持多版本控制吧这里只写中文吧此外可配置于网站级别,它允许使用不同的版本在不同的站点上,并且必须为指定站点指定一个特定的版本,通常情况下使用下面的命令就可以进行这一设定。 首先放url吧转自别人转的英文原文,不懂英文的先看一遍英文中的代码部分,然后我会在在下面解释 iis6.0 为什么要配置多版本php? 因为现在的许多程序是在php5.2版本下运...

    Jingbin_ 评论0 收藏0
  • Centos下安装Python3.6和Python2共存

    摘要:写在前面中默认自带的版本为,那么这里需要将其改为下载并解压官方下载地址为,这里已为例。下载解压安装修改为默认的和共存由于用的仍然是,所以这里修改一下将第一行改为原文地址 写在前面 centos6.8中默认自带的python版本为python2.6,那么这里需要将其改为python3 下载并解压 官方下载地址为 https://www.python.org/downlo... ,这里已3...

    LeviDing 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<