如何回滚到PHP 5.2?

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

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

注意 – 这仅适用于10.04(清晰)

可以使用业力包并使用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 

从链接文本得到这个

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

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

我在博客文章“ 为Ubuntu 10.10编译PHP 5.2”中写了这些步骤,但步骤基本上涉及以下内容:

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

我的configure命令看起来像这样:

 ./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 pacakges,则需要先卸载它们,然后再尝试安装自己编译的软件包。

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