AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 82
Accepted
silvo
silvo
Asked: 2010-07-29 12:04:55 +0800 CST2010-07-29 12:04:55 +0800 CST 2010-07-29 12:04:55 +0800 CST

如何回滚到 PHP 5.2?

  • 772

我刚刚在我的开发服务器上安装了 10.04 LTS,但我需要在其上运行的系统(Magento 电子商务)与最新版本的 Ubuntu 附带的 PHP 5.3 不兼容。是否有一种安全且防升级的方式来安装 PHP 5.2,或者使用旧版本的 Ubuntu 会更容易吗?

package-management compatibility php
  • 4 4 个回答
  • 8322 Views

4 个回答

  • Voted
  1. Best Answer
    txwikinger
    2010-07-29T12:07:41+08:002010-07-29T12:07:41+08:00

    您可以使用我为此目的创建的ppa 。请注意必要的固定。此外,aptitude 不会识别固定。如果你想使用它,你必须使用 aptitude 特定的方法。

    注意 - 这仅适用于 10.04(清醒)

    • 10
  2. kone4040
    2010-07-29T13:47:21+08:002010-07-29T13:47:21+08:00

    可以使用业力包并用 aptitude 固定它们。这可以通过使用以下命令来完成:

    # remove all php packge
    sudo aptitude purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`
    # use karmiс for php pakage
    # pin-params:  a (archive), c (components), v (version), o (origin) and l (label).
    echo -e "Package: php5\nPin: release a=karmic\nPin-Priority: 991\n"  | sudo tee   /etc/apt/preferences.d/php > /dev/null
    apt-cache search php5-|grep php5-|awk '{print "Package:", $1,"\nPin: release   a=karmic\nPin-Priority: 991\n"}'|sudo tee -a /etc/apt/preferences.d/php > /dev/null
    apt-cache search -n libapache2-mod-php5 |awk '{print "Package:", $1,"\nPin: release a=karmic\nPin-Priority: 991\n"}'| sudo tee -a /etc/apt/preferences.d/php > /dev/null
    echo -e "Package: php-pear\nPin: release a=karmic\nPin-Priority: 991\n"  | sudo tee -a     /etc/apt/preferences.d/php > /dev/null
    # add karmic to source list
    grep 'main restricted' /etc/apt/sources.list|grep -v "#"| sed s/lucid/karmic/g | sudo tee             /etc/apt/sources.list.d/karmic.list > /dev/null
    # update package database (use apt-get if aptitude crash)
    sudo apt-get update
    # install php
    sudo aptitude install -t karmic php5-cli php5-cgi
    # or (and) sudo apt-get install -t karmic  libapache2-mod-php5
    sudo aptitude hold `dpkg -l | grep php5| awk '{print $2}' |tr "\n" " "`
    #done
    

    从链接文本中得到这个

    • 2
  3. Chaulky
    2010-11-24T21:21:15+08:002010-11-24T21:21:15+08:00

    在http://civicactions.com/blog/2010/may/26/ubuntu_1004_and_drupal?page=1#comment-3717上有一篇很棒的博客文章

    • 2
  4. user10207
    2011-02-05T00:34:48+08:002011-02-05T00:34:48+08:00

    我最近试图自己解决同样的问题。我没有更改包管理,而是自己从源代码编译 PHP 5.2.17,然后使用程序Checkinstall在我的系统上安装新的 .deb 包。

    我在一篇博文Compiling PHP 5.2 for Ubuntu 10.10中写了这些步骤,但这些步骤基本上涉及以下内容:

    1. 下载 PHP 源代码 (http://php.net/downloads.php) 到 /usr/local/src
    2. 配置源,从./configure --help读取安装文档和输出

    我的配置命令如下所示:

    ./configure --prefix=/opt --with-apxs2=/usr/bin/apxs2 --with-curl=/usr/lib --with-pgsql --with-pear --with-mysql --with-gd
    
    1. 使用“make”编译源代码
    2. 使用“checkinstall”安装编译好的包

    就是这样。我已经使用 Synaptic 安装了 Apache2(您需要使用 apache2-mpm-prefork 包才能与 PHP 一起使用)。此外,如果您已经安装了任何 PHP5 包,则需要在尝试安装自己的编译包之前卸载它们。

    自己编译包真的不需要很长时间,如果你还没有在你的 Ubuntu 机器上完成它,这是一个很好的体验。

    • 2

相关问题

  • 包管理器之间有什么区别?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何安装 .run 文件?

    • 7 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    如何获得 CPU 温度?

    • 21 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Marko Smith

    如何使用命令行将用户添加为新的 sudoer?

    • 7 个回答
  • Marko Smith

    更改文件夹权限和所有权

    • 9 个回答
  • Marko Smith

    你如何重新启动Apache?

    • 13 个回答
  • Marko Smith

    如何卸载软件?

    • 11 个回答
  • Marko Smith

    如何删除 PPA?

    • 26 个回答
  • Martin Hope
    NES 如何启用或禁用服务? 2010-12-30 13:03:32 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    Olivier Lalonde 如何在结束 ssh 会话后保持进程运行? 2010-10-22 04:09:13 +0800 CST
  • Martin Hope
    David B 如何使用命令行将用户添加为新的 sudoer? 2010-10-16 04:02:45 +0800 CST
  • Martin Hope
    Hans 如何删除旧内核版本以清理启动菜单? 2010-08-21 19:37:01 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve