如何在Ubuntu 14.04(安装LAMP)中将PHP从5.5.9降级到5.4

我需要将我的PHP版本从5.5.9降级到5.4(使用Ubuntu 14.04),因为我有一个使用mySQL的代码(在5.5.9中已弃用),我无法更改该代码。 有办法吗?

*我尝试了在网站上看到的关于该问题的其他主题,但我找不到任何帮助我的内容。

首先,您需要删除所有php5文件:

sudo apt-get remove --purge `dpkg -l | grep php | grep -w 5.5 | awk '{print $2}' | xargs` 

之后尝试搜索php 5.4。 可用资源 :

 apt-cache policy php5 

我的结果:

 php5: Installed: (none) Candidate: 5.5.9+dfsg-1ubuntu4.4 Version table: 5.5.9+dfsg-1ubuntu4.4 0 500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages 500 http://archive.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages 5.5.9+dfsg-1ubuntu4 0 500 http://archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages 

如果没有可用资源,我们需要通过以下命令添加一些资源:

 echo "deb http://php53.dotdeb.org stable all" | sudo tee -a /etc/apt/sources.list 

 apt-get update 

如果以下签名存在问题:

 Reading package lists... Done W: GPG error: http://php53.dotdeb.org stable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY xxxxxCODExxxx 

我们需要通过命令签署我们的Deb存储库:

 gpg --keyserver keys.gnupg.net --recv-key xxxxxCODExxxx gpg -a --export xxxxxCODExxxx | sudo apt-key add - apt-get update 

之后执行:

 sudo apt-get update apt-cache policy php5 

你应该看到最后的结果:

 php5: Installed: (none) Candidate: 5.5.9+dfsg-1ubuntu4.4 Version table: 5.5.9+dfsg-1ubuntu4.4 0 500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages 500 http://archive.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages 5.5.9+dfsg-1ubuntu4 0 500 http://archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages 5.4.33-1~dotdeb.1 0 500 http://php53.dotdeb.org/ stable/all amd64 Packages 

最后通过点击安装你的版本:

 apt-get install php5=5.4.33-1~dotdeb.1 

请享用 ;)

通过以下命令添加dotdeb repo:

 echo "deb http://php53.dotdeb.org stable all" | sudo tee -a /etc/apt/sources.list 

获取并安装GnuPG密钥

 wget http://www.dotdeb.org/dotdeb.gpg sudo apt-key add dotdeb.gpg 

然后

 sudo apt-get update 

安装特定版本的简便方法是通过synaptic

在此处输入图像描述

全部完成

在此处输入图像描述

你也应该降级apache以安装正确的“ libapache2-mod-php5

通过以下命令添加精确的repo

 echo "deb http://security.ubuntu.com/ubuntu precise-security main" | sudo tee -a /etc/apt/sources.list && sudo apt-get update 

然后

 sudo aptitude install apache2=2.2.22-1ubuntu1.7 

确保您接受以下内容

以下操作将解决这些依赖关系:

安装以下包:
1)apache2-mpm-prefork [2.2.22-1ubuntu1.7(精确安全)]
2)apache2.2-bin [2.2.22-1ubuntu1.7(精确安全)]

然后

 sudo aptitude install libapache2-mod-php5=5.4.36-1~dotdeb.1 

在尝试安装php包时不要忘记设置特定的版本

 sudo aptitude install php5-mysql=5.4.36-1~dotdeb.1