当前位置:Gxlcms > PHP教程 > Linux下部署php多版本共存

Linux下部署php多版本共存

时间:2021-07-01 10:21:17 帮助过:23人阅读

Linux下部署php多版本共存

  • Linux下部署php多版本共存
    • 背景说明
    • 开始安装
    • phpini 配置
    • php-fpmconf 配置
    • 启动 php-fpm
    • 修改nginx配置对需要的服务配置使用php-5445
    • 配置php-5445 的php54-fpm 开机自动启动


背景说明

自php7问世,身为最新版本控的我马上升级体验,但是由于服务器上还有旧程序在运行,只好部署一个php多版本共存环境。

现有环境是lnmp
- CentOS 6.7
- nginx 1.10.1
- mariadb-10.0.26
- php 7.0.8

为了更好兼容旧的php程序,推荐使用5.4.45. 主要是兼容mysql扩展。

开始安装

首先要下载php-5.4.45.tar.gz源码包。

通过源码安装

#tarxzvfphp-5.4.45.tar.gz#cdphp-5.4.45#./configure--prefix=/usr/local/php54--with-config-file-path=/usr/local/php54/etc--enable-fpm--with-fpm-user=www--with-fpm-group=www--with-mysql=mysqlnd--with-mysqli=mysqlnd--with-pdo-mysql=mysqlnd--with-iconv-dir--with-freetype-dir=/usr/local/freetype--with-jpeg-dir--with-png-dir--with-zlib--with-libxml-dir=/usr--enable-xml--disable-rpath--enable-bcmath--enable-shmop--enable-sysvsem--enable-inline-optimization--with-curl--enable-mbregex--enable-mbstring--with-mcrypt--enable-ftp--with-gd--enable-gd-native-ttf--with-openssl--with-mhash--enable-pcntl--enable-sockets--with-xmlrpc--enable-zip--enable-soap--with-gettext--disable-fileinfo--enable-intl--with-xsl#makeZEND_EXTRA_LIBS='-liconv'#makeinstall#cpphp.ini-production/usr/local/php/etc/php.ini

php.ini 配置

post_max_size = 50M
upload_max_filesize = 50M
date.timezone = PRC
short_open_tag = On
cgi.fix_pathinfo=0
max_execution_time = 300
disable_functi>exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server

php-fpm.conf 配置

# vim /usr/local/php/etc/php-fpm.conf
[global]
pid = /usr/local/php54/var/run/php-fpm.pid
error_log = /usr/local/php54/var/log/php-fpm.log
log_level = notice

[www]
listen = /tmp/php54-cgi.sock
listen.backlog = -1
listen.allowed_clients = 127.0.0.1:9001
listen.owner = www
listen.group = www
listen.mode = 0666
user = www
group = www
pm = dynamic
pm.max_children = 40
pm.start_servers = 20
pm.min_spare_servers = 20
pm.max_spare_servers = 40
request_terminate_timeout = 100
request_slowlog_timeout = 0
slowlog = var/log/slow.log

注意:重点是配置监听端口和进程

启动 php-fpm

# cp sapi/fpm/init.d.php-fpm /etc/init.d/php54-fpm# chmod +x /etc/init.d/php54-fpm# /etc/init.d/php54-fpm start

修改nginx配置,对需要的服务配置使用php-5.4.45

  location ~ [^/]\.php(/|$)
  {
      try_files $uri =404;
      fastcgi_pass  unix:/tmp/php54-cgi.sock;
      fastcgi_index index.php;
      include fastcgi.conf;
  }

配置php-5.4.45 的php54-fpm 开机自动启动

# chkconfig --add php54-fpm# chkconfig php54-fpm on

chkconfig 功能说明:检查,设置系统的各种服务。
语法:chkconfig [–add][–del][–list][系统服务]
chkconfig [–level <等级代号>][系统服务][on/off/reset]

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('
  • ').text(i)); }; $numbering.fadeIn(1700); }); });

    以上就介绍了 Linux下部署php多版本共存,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

  • 人气教程排行