Ubuntu: How to downgrade PHP from 5.5.9 to 5.4 in Ubuntu 14.04 (Installed with LAMP)



Question:

I need to downgrade my PHP version from 5.5.9 to 5.4 (using Ubuntu 14.04), because I have a code that's using mySQL (which is deprecated in 5.5.9), and I cannot change that code. Is there a way to do it?

*I tried the other threads that I saw about that issue in the site, but I couldn't find anything that helped me.


Solution:1

First you need to remove all php5 files :

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

After that try to search for php 5.4. available resources :

apt-cache policy php5  

My result :

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  

If there is no resources available than we need to add some by following command :

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

and

apt-get update  

If there is a problem with signatures like following :

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  

we need to sign our Deb repository by commands :

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

After that execute :

sudo apt-get update  apt-cache policy php5  

you should see last result :

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  

and finally install your version by hitting :

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

Enjoy ;)


Solution:2

add dotdeb repo by following command :

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

Fetch and install the GnuPG key

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

Then

sudo apt-get update  

The easy way to install the specific version is via synaptic

enter image description here

all done

enter image description here

also you should downgrade the apache to install right "libapache2-mod-php5"

add precise repo by the following command

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

then

sudo aptitude install apache2=2.2.22-1ubuntu1.7  

make sure you accept the following

The following actions will resolve these dependencies:

Install the following packages:
1) apache2-mpm-prefork [2.2.22-1ubuntu1.7 (precise-security)]
2) apache2.2-bin [2.2.22-1ubuntu1.7 (precise-security)]

then

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

don't forget to set specific version when try to install an php package

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

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »