LuManager升级php5.6.27方法

LuManager自带的PHP在FastCGI模式是 5.2.17版,非FastCGI模式是 5.3.14版。由于360网盘的停服,已不敢再用那些免费的网盘,干脆自己搭个私有云。查了下相关资料准备先试试ownCloud ,ownCloud 目前最新版本是ownCloud 9.1.1,最低要求PHP5.4,所以必须要升级下PHP版本,开始折腾吧。

一开始参考这篇文章http://www.zijidelu.org/thread-51419-1-1.html试了几次,安装过程也没有错误提示,以为成功了,可重启Apache后通过探针测试还是5.3.14版。然后又参考http://www.zijidelu.org/thread-51549-1-1.html,折腾了半天终于成功了。安装过程中除了文中说的几个错误,我又遇到了几个新问题,最后都通过百度查资料,一个个的解决了。

言归正传,下面是方法:(阿里云 centos 6.5)

  1. 先去PHP官网获取要安装的PHP版本下载地址(http://php.net/downloads.php)
  2. 以root权限进入终端界面,下载php
    1
    wget http : //php.net/get/php-5.6.27.tar.gz

    下载PHP
  3. 解压并安装,这里是关键,也是问题最多的地方
    1
    2
    3
    4
    5
    tar - zxvf php - 5.6.27.tar.gz
    cd php - 5.6.27
    . / configure -- prefix = / usr / local / php - with - apxs2 = / usr / local / apache / bin / apxs -- with - config - file - path = / usr / local / php / etc    -- enable - opcache -- with - mysql = mysqlnd -- with - mysqli = mysqlnd -- with - pdo - mysql = mysqlnd -- enable - fileinfo -- with - mcrypt = / usr / local / libmcrypt    -- with - iconv - dir = / usr / local    -- with - freetype - dir -- with - jpeg - dir -- with - png - dir -- with - zlib -- with - libxml - dir = / usr -- enable - xml    -- disable - rpath -- enable - bcmath -- enable - shmop -- enable - exif -- enable - sysvsem -- enable - inline - optimization -- with - curl    -- enable - mbregex -- enable - mbstring    -- with - gd -- enable - gd - native - ttf -- with - openssl -- with - mhash    -- enable - pcntl -- enable - sockets -- with - xmlrpc -- enable - ftp -- with - gettext -- enable - zip -- enable - soap -- disable - ipv6    -- disable - debug
    make ZEND_EXTRA_LIBS = '-liconv'
    make install

    问题1:安装过程中出现 “Sorry, I cannot run apxs” 错误提示
    解决方法:修改vi /usr/local/apache/bin/apxs文件,之后重新编译安装PHP
    1
    vi / usr / local / apache / bin / apxs

    将第一行这句
    1
    #!/usr/sbin/perl -w

    修改为
    1
    #!/usr/bin/perl -w

    问题2:执行“make ZEND_EXTRA_LIBS=’-liconv’”时出现错误提示“/usr/bin/ld: cannot find -liconv”
    解决方法:安装libiconv库(下载页面 http://www.gnu.org/software/libiconv/),之后重新编译安装PHP
    1
    2
    3
    4
    5
    6
    7
    8
    wget http : //ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
    tar - xzf libiconv - 1.14.tar.gz
    cd libiconv - 1.14
    . / configure -- prefix = / usr / local
    make
    make install
    ln - s / usr / local / lib / libiconv . so / usr / lib
    ln - s / usr / local / lib / libiconv . so . 2 / usr / lib / libiconv . so . 2

    问题3:运行PHP时报“Call to undefined function: mcrypt_module_open() ”错误
    解决方法:安装libmcrypt(下载页面 ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt),之后重新编译安装PHP
    1
    2
    3
    4
    5
    6
    7
    wget ftp : //mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz
    tar - zxvf libmcrypt - 2.5.7.tar.gz
    cd libmcrypt - 2.5.7
    . / configure -- prefix = / usr / local / libmcrypt
    make
    make check
    make install
  4. 检查apache下/usr/local/apache/modules是否有libphp5.so
  5. 复制配置文件
    1
    cp php . ini - development / usr / local / php / etc / php . ini
  6. 编辑php.ini,把include_path前面的分号删除,改成include_path = “/opt/php/lib/php”
    1
    vi / usr / local / php / etc / php . ini
  7. 重启apache
原文:https://www.mebox.cn/develop/929.html

收藏备用。 

转载于:https://www.cnblogs.com/cnteam/p/7784898.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
编译 ./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --mandir=/usr/local/php/php/man --with-config-file-path=/usr/local/php/etc --with-mysql-sock=/var/run/mysql/mysql.sock --with-mcrypt=/usr /i nclude --with-mhash --with-openssl --with-mysql=shared,mysqlnd --with-mysqli=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --with-gd --with-iconv --with-zlib --enable-zip --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-gd-native-ttf --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-jpeg-dir --with-freetype-dir --enable-opcache --enable-fpm --enable-fastcgi --with-fpm-user=www --with-fpm-group=www --without-gdbm --with-mcrypt=/usr/local/apps/libmcrypt --disable-fileinfo 报错:1, **configure: error: system libzip must be upgraded to version >=**0.11。 使用Yum最新版只到0.10,不足以达到要求。 一、先删除libzip yum remove libzip -y SSH执行以上命令,先删除libzip 和 libzip-devel 二、下载安装并手动编译 wget https://nih.at/libzip/libzip-1.2.0.tar.gz tar -zxvf libzip-1.2.0.tar.gz cd libzip-1.2.0 ./configure make && make install 三、(可忽略)另外最新版本请参考官网:https://nih.at/libzip/ 1.5.0的libzip需要cmake wget https://libzip.org/download/libzip-1.5.0.tar.gz tar -zxvf libzip-* cd libzip* mkdir build && cd build && cmake .. && make && make install 报错2: error: off_t undefined; check your library configuration 根据报错信息分析 configure: error: off_t undefined; check your library configuration 未定义的类型 off_t。 off_t 类型是在 头文件 unistd.h中定义的,在32位系统 编程成 long int ,64位系统则编译成 long long int ,这里题主的系统应该是 64位的吧,在进行编译的时候 是默认查找64位的动态链接库,但是默认情况下 centos 的动态链接库配置文件/etc/ld.so.conf里并没有加入搜索路径,这个时候需要将 /usr/local/lib64 /usr/lib64 这些针对64位的库文件路径加进去。 采用下面的方法。 添加搜索路径到配置文件 echo '/usr/local/lib64 /usr/local/lib /usr/lib /usr/lib64'>>/etc/ld.so.conf 然后 更新配置 ldconfig -v 再次执行 编译 成功 执行安装: make && make install 报错: /usr/local/include/zip.h:59:21: fatal error: zipconf.h: No such file or directory 解决: cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h 1 安装成功: 复制配置文件: cp php.ini-production /usr/local/php/lib/php.ini cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf ln -s /usr/local/php/sbin/php-fpm /usr/local/bin 修改配置: cd /usr/local/php/etc/php-fpm.d vim www.conf [www] //池子名 (pool) 设置 ;listen = /tmp/php-fcgi.sock // 监听的地址,可以监听socket ,也可以监听端口 listen = 127.0.0.1:8089 或者这样写,php-fpm 通常在本地使用,php和nginx 通常在一台机器,所以可写127.0.0.1,别的机器 连接,需用本机ip listen.mode = 666 //sock 文件的权限 listen.owner = nobody listen.group = nobody user = php-fpm group = php-fpm pm = dynamic pm.max_children = 50 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 500 rlimit_files = 1024 加入 systemtl 服务: cd /usr/local/src/php-7.3.0beta1/sapi/fpm cp php-fpm.service /usr/lib/systemd/system/ 启动: systemctl start php-fpm systemctl status php-fpm -l
tar zxvf php-5.6.37.tar.gz cd php-5.6.37 #添加组 groupadd www #添加php-fpm用户 useradd -c php-fpm-user -g www -M www # c和c++编译器 yum -y install -y gcc gcc-c++ # PHP扩展依赖 yum install -y libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel openldap-devel ./configure --prefix=/usr/local/php \ --with-config-file-path=/usr/local/php/etc \ --enable-fpm\ --with-fpm-user=www\ --with-fpm-group=www\ --enable-mysqlnd\ --with-mysql=mysqlnd\ --with-mysqli=mysqlnd\ --with-pdo-mysql=mysqlnd\ --enable-opcache\ --enable-pcntl\ --enable-mbstring\ --enable-soap\ --enable-zip\ --enable-calendar\ --enable-bcmath\ --enable-exif\ --enable-ftp\ --enable-intl\ --with-openssl\ --with-zlib\ --with-curl\ --with-gd\ --with-zlib-dir=/usr/lib\ --with-png-dir=/usr/lib\ --with-jpeg-dir=/usr/lib\ --with-gettext\ --with-mhash\ --with-ldap make && make install cp php.ini-production /usr/local/php/etc/php.ini cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm # 设置php-fpm开机自动启动 chmod +x /etc/init.d/php-fpm chkconfig php-fpm on cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf service php-fpm start 设置php为全局命令: 修改/etc/profile文件使其永久性生效,并对所有系统用户生效, 在文件末尾加上如下两行代码: PATH=$PATH:/usr/local/php/bin //php命令路径 如果还要同时加入mysql 则第一句: PATH=$PATH:/usr/local/php/bin:/usr/local/mysql/bin //路径一定要正确 执行 命令source /etc/profile 使用php -V确认 【查看php-fpm端口】 vim /usr/local/php/etc/php-fpm.conf listen = 127.0.0.1:9000
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值