zoukankan      html  css  js  c++  java
  • [Ubuntu] 如何在Ubuntu11.04将PHP5.3降级到PHP5.2

    众所周知,Ubuntu11.04使用sudo apt-get 安装好的php版本是5.3.5,很多网站都是不兼容的,所以要找个办法降级。

    还好借助google,把问题都搞掂了~

    创建一个php_version.sh,然后输入下面内容。

    #!/bin/bash
    #
     by Ruben Barkow (rubo77) http://www.entikey.z11.de/

    # Originally Posted by Bachstelze http://ubuntuforums.org/showthread.php?p=9080474#post9080474
    #
     OK, here's how to do the Apt magic to get PHP packages from the karmic repositories:

    echo 
    "Am I root? "
    if [ "$(whoami &2>/dev/null)" != "root" ] && [ "$(id -un &2>/dev/null)" != "root" ] ; then
    echo 
    " NO!

    Error: You must be root to run this script.
    Enter
    sudo su
    "
    exit 
    1
    fi
    echo 
    " OK";


    #install aptitude before, if you don`t have it:
    apt-get install aptitude
    # or if you prefer apt-get use:
    #
     alias aptitude='apt-get'

    # finish all apt-problems:
    aptitude update
    aptitude 
    -f install
    #apt-get -f install

    # remove all your existing PHP packages. You can list them with dpkg -l| grep php
    PHPLIST=$(for i in $(dpkg -| grep php|awk '{ print $2 }' ); do echo $i; done)
    echo these pachets will be removed: 
    $PHPLIST 
    # you need not to purge, if you have upgraded from karmic:
    aptitude remove $PHPLIST
    # on a fresh install, you need purge:
    #
     aptitude remove --purge $PHPLIST


    #Create a file each in /etc/apt/preferences.d like this (call it for example /etc/apt/preferences.d/php5_2);
    #
    #
    Package: php5
    #
    Pin: release a=karmic
    #
    Pin-Priority: 991
    #
    #
    The big problem is that wildcards don't work, so you will need one such stanza for each PHP package you want to pull from karmic:

    echo ''
    >/etc/apt/preferences.d/php5_2
    for i in $PHPLIST ; do echo "Package: $i
    Pin: release a=karmic
    Pin-Priority: 991
    ">>/etc/apt/preferences.d/php5_2; done

    # duplicate your existing sources.list replacing lucid with karmic and save it in sources.list.d:
    #
    sed s/lucid/karmic/g /etc/apt/sources.list | sudo tee /etc/apt/sources.list.d/karmic.list

    # better exactly only the needed sources, cause otherwise you can get a cachsize problem:
    echo "# needed sources vor php5.2:
    deb http://de.archive.ubuntu.com/ubuntu/ karmic main restricted
    deb-src http://de.archive.ubuntu.com/ubuntu/ karmic main restricted

    deb http://de.archive.ubuntu.com/ubuntu/ karmic-updates main restricted
    deb-src http://de.archive.ubuntu.com/ubuntu/ karmic-updates main restricted

    deb http://de.archive.ubuntu.com/ubuntu/ karmic universe
    deb-src http://de.archive.ubuntu.com/ubuntu/ karmic universe
    deb http://de.archive.ubuntu.com/ubuntu/ karmic-updates universe
    deb-src http://de.archive.ubuntu.com/ubuntu/ karmic-updates universe

    deb http://de.archive.ubuntu.com/ubuntu/ karmic multiverse
    deb-src http://de.archive.ubuntu.com/ubuntu/ karmic multiverse
    deb http://de.archive.ubuntu.com/ubuntu/ karmic-updates multiverse
    deb-src http://de.archive.ubuntu.com/ubuntu/ karmic-updates multiverse

    deb http://security.ubuntu.com/ubuntu karmic-security main restricted
    deb-src http://security.ubuntu.com/ubuntu karmic-security main restricted
    deb http://security.ubuntu.com/ubuntu karmic-security universe
    deb-src http://security.ubuntu.com/ubuntu karmic-security universe
    deb http://security.ubuntu.com/ubuntu karmic-security multiverse
    deb-src http://security.ubuntu.com/ubuntu karmic-security multiverse
    " >> /etc/apt/sources.list.d/karmic.list

    aptitude update

    apache2ctl restart

    echo install new from karmic:
    aptitude 
    -t karmic install $PHPLIST

    # at the end retry the modul libapache2-mod-php5 in case it didn't work the first time:
    aptitude -t karmic install libapache2-mod-php5

    apache2ctl restart

    授权可运行:

    chmod +x php_version.sh

    运行:

    sudo ./php_version.sh

    过一段时间等它运行完了,运行一下

    <?php phpinfo();?>

    搞掂!

    Have fun with Ubuntu! 

  • 相关阅读:
    lqb 基础练习 数列特征
    lqb 基础练习 查找整数 (遍历)
    lqb 基础练习 杨辉三角形
    lqb 基础练习 特殊的数字
    lqb 基础练习 回文数
    lqb 基础练习 特殊回文数
    lqb 基础练习 十进制转十六进制
    lqb 基础练习 十六进制转十进制
    lqb 基础练习 十六进制转八进制 (字符串进行进制转化)
    Git详细操作
  • 原文地址:https://www.cnblogs.com/davidhhuan/p/2182769.html
Copyright © 2011-2022 走看看