设为首页 收藏本站
查看: 947|回复: 0

[经验分享] PHP5.5降版本到5.4.45,K哥

[复制链接]

尚未签到

发表于 2018-12-15 15:14:02 | 显示全部楼层 |阅读模式
  2015.10.8
  PHP5.5降版本到5.4.45
  主管找到我,开发发现PHP5.5不支持某些插件
  需要把PHP降级到5.4.45
  OK,开始研究
  1、首先降级肯定要停网站,报给主管
  2、肯定不能用YUM,需要自己编译安装
  3、备份是必须要先做的
  OK,那先备份吧
  都需要备份什么呢
  MYSQL数据库、PHP配置文件、网站文件
  一定有人说了,需要备份这么多吗
  就怕万一啊,万一服务器磁盘坏了你找谁,找谁也没用的
  1、数据库备份,这是我喜欢的备份命令
  mysqldump -uroot -p密码 数据库名 >/root/back/数据库名-时间.sql
  2、 网站文件
  tar  –zcvf  kevin-时间.tar.gz  /opt/kevin
  3、 nginx配置文件
  tar  –zcvf  nginxconf-时间.tar.gz  /usr/local/nginx/conf/、
  我是K哥!
  4、 php配置文件
  tar  –zcvf  php-fpm.d-时间.tar.gz /etc/php*  
  /etc/php* 中包括 php.ini文件 php-fpm.d目录
  tar -zcvf php-fpm.conf-时间.tar.gz /usr/local/php/etc/php-fpm.conf
  OK,自行FTP下载
  

  
  删除PHP5.5
  先用YUM删吧
  yum remove php*
  看看还有PHP的什么东西吗
rpm -qa |grep php
如果有残留-e删除
  rpm –e php-
  1、安装PHP5.4
  安装各种插件
  yum install ncurses-devel libxml2-develbzip2-devel libcurl-devel curl-devel libjpeg-devel libpng-devel freetype-develnet-snmp-devel gcc gcc-c++
  
  2、安装mysql开发
  rpm –qa |grep mysql
  wget  ftp://bo.mirror.garr.it/pub/1/slc/updates/slc6X/x86_64/RPMS/mysql-devel-5.1.69-1.el6_4.x86_64.rpm
  rpm –ivh mysql-devel-5.1.69
  
  3、安装libmcrypt-2.5.7.tar.gz
  wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz
  tar xzvf libmcry*
cd libmcry*

  
  ./configure
  make
  make install
  /sbin/ldconfig
  cd libltdl/
  ./configure --enable-ltdl-install
  make
  make install
  我是K哥!
  ln -s /usr/lib64/mysql/libmysqlclient.so.16.0.0 /usr/lib/libmysqlclient.so
  4、安装ZendGuardLoader
  wget http://blog.ich8.com/wp-content/uploads/2013/06/ZendGuardLoader-70429-PHP-5.4-linux-glibc23-x86_64.tar.gz
  tar –zxvf  ZendGuardLoader
  mv ZendGuardLoader.so /usr/local/php/modules/
5、配置PHP支持 Zend Guard Loader
如果你备份了php.ini那么不需要配置了,如果你是新安装就编辑吧
编辑php.ini(/etc/php.ini )文件,在最后位置添加以下内容:
[Zend Guard]
zend_extension=/usr/local/zend/ZendGuardLoader.so
; Enables loading encoded scripts. The default value is On
zend_loader.enable=1
  

  6、创建PHP-fpm用户和组,我这里是apache:www
  这后面涉及到网站文件安全,会有新博文讲网站安全
  groupadd www
  useradd apache -g www
  7、编译安装
  FTP上传PHP5.4.tar.gz,或者直接wget,我是因为很多台服务器,所以用的FTP
  tar -zxvf PHP5.4.tar.gz
  cd PHP5.4
  我是K哥!
  ./configure --prefix=/usr/local/php --with-config-file-path=/etc \
  --with-mysql=/usr/ --with-mysqli=/usr/bin/mysql_config \
  --with-pdo-mysql=/usr/bin/mysql --with-iconv-dir=/usr/local --enable-fpm \
  --disable-phar --with-fpm-user=apache \
  --with-fpm-group=www --with-pcre-regex \
  --with-zlib --with-bz2 --enable-calendar --with-curl --enable-dba --with-libxml-dir \
  --enable-ftp --with-gd --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir \
  --enable-gd-native-ttf --enable-gd-jis-conv --with-mhash --enable-mbstring --with-mcrypt \
  --enable-pcntl --enable-xml --disable-rpath --enable-shmop --enable-sockets --enable-zip  --enable-cli --enable-pdo \
  --enable-bcmath --with-snmp --disable-ipv6 --enable-mbregex --enable-soap
  make
  make install
  8、恢复php配置文件
  FTP上传之前备份的配置文件
  cp php.ini /etc/php.ini
  cp php-fpm.conf /usr/local/php/etc/php-fpm.conf
  cp php-fpm.d /etc/
  我是K哥!
  

  9、启动PHP-FPM,检查并重启nginx
  /usr/local/php/sbin/php-fpm
  /usr/local/nginx/sbin/nginx –t
  /usr/local/nginx/sbin/nginx -s reload
  10、赠送环节,如果觉得命令麻烦,不如把PHP加入自启动
  配置PHP-FPM开机自启动
  vi /etc/init.d/php-fpm
  一般没有这个文件,直接vi创建就好,复制下面的命令到文件中
  #!/bin/bash
  #
  # Startup script for the PHP-FPM server.
  #
  # chkconfig: 345 85 15
  # description: PHP is an HTML-embedded scripting language
  # processname: php-fpm
  # config: /usr/local/php/etc/php.ini
  
  # Source function library.
  . /etc/rc.d/init.d/functions
  
  PHP_PATH=/usr/local
  DESC="php-fpm daemon"
  NAME=php-fpm
  # php-fpm路径
  DAEMON=$PHP_PATH/php/sbin/$NAME
  # 配置文件路径
  CONFIGFILE=$PHP_PATH/php/etc/php-fpm.conf
  # PID文件路径(在php-fpm.conf设置)
  PIDFILE=/var/run/php-fpm/php-fpm.pid
  SCRIPTNAME=/etc/init.d/$NAME
  
  # Gracefully exit if the package has been removed.
  test -x $DAEMON || exit 0
  
  rh_start() {
    $DAEMON -y $CONFIGFILE || echo -n " already running"
  }
  
  rh_stop() {
    kill -QUIT `cat $PIDFILE` || echo -n " not running"
  }
  
  rh_reload() {
    kill -HUP `cat $PIDFILE` || echo -n " can't reload"
  }
  
  case "$1" in
    start)
          echo -n "Starting $DESC: $NAME"
          rh_start
          echo "."
          ;;
    stop)
          echo -n "Stopping $DESC: $NAME"
          rh_stop
          echo "."
          ;;
    reload)
          echo -n "Reloading $DESC configuration..."
          rh_reload
          echo "reloaded."
    ;;
    restart)
          echo -n "Restarting $DESC: $NAME"
          rh_stop
          sleep 1
          rh_start
          echo "."
          ;;
    *)
           echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
           exit 3
          ;;
  esac
  exit 0
  11、编辑好后保存,执行以下命令
  chmod +x /etc/init.d/php-fpm
  chkconfig php-fpm on
  12、完成!可以使用以下命令管理php-fpm了
  service php-fpm start
  service php-fpm stop
  service php-fpm restart
  13、验证操作
  打开所有网站检查,并查看PHP日志文件
  


  


  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-651751-1-1.html 上篇帖子: PHP 对象 const定义类的常量 下篇帖子: php 5.4中php-fpm 的重启、终止操作命令
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表