Come eseguire il downgrade da PHP 5.4 a 5.3

18

Recentemente ho aggiornato PHP a 5.4, ma sembra che mi stia fallendo perché APC non funziona con esso, tuttavia questo non mi ha dato altra scelta che passare alla versione 5.3, come posso fare?

Ho eseguito apt-get remove php5 e apt-get purge php5 quindi ho rimosso il repository 5.4 da apt-get quindi eseguito apt-get install php5 , dice che stava installando 5.3, e ho riavviato php-fastcgi e php5-fpm ma quando eseguo php -v dice 5.4.

Come posso effettuare il downgrade da 5.4 a 5.3?

Il mio server utilizza Ubuntu 11.04.

    
posta MacMac 26.03.2012 - 23:28

5 risposte

11

Downgrade da PHP 5.4 a 5.3

Nel processo di downgrade di Ubuntu è davvero un casino. Ecco lo script che potresti trovare utile ( rimuove PHP 5.4 e installa PHP 5.3 ):

sudo apt-get remove --purge 'dpkg -l | grep php | grep -w 5.4 | awk '{print }' | xargs'
sudo apt-get install php5=5.3.10-1ubuntu3.4 php5-cli=5.3.10-1ubuntu3.4 php5-common=5.3.10-1ubuntu3.4 libapache2-mod-php5=5.3.10-1ubuntu3.4
sudo apt-get install php5=5.3.10-1ubuntu3.4 php5-cli=5.3.10-1ubuntu3.4 php5-common=5.3.10-1ubuntu3.4 libapache2-mod-php5=5.3.10-1ubuntu3.4
sudo apt-get install php-pear=5.3.10-1ubuntu3.4 php5-curl=5.3.10-1ubuntu3.4 php5-gd=5.3.10-1ubuntu3.4 php5-intl=5.3.10-1ubuntu3.4 php5-mysql=5.3.10-1ubuntu3.4 php5-pspell=5.3.10-1ubuntu3.4 php5-recode=5.3.10-1ubuntu3.4 php5-snmp=5.3.10-1ubuntu3.4 php5-sqlite=5.3.10-1ubuntu3.4 php5-tidy=5.3.10-1ubuntu3.4 php5-xmlrpc=5.3.10-1ubuntu3.4 php5-xsl=5.3.10-1ubuntu3.4

Dove sono disponibili le versioni disponibili per comando: apt-cache showpkg php5

Dopo l'installazione, verificalo tramite comando: php --version

Fai attenzione e non installare nessun altro pacchetto senza la versione del pacchetto specificata (come php5-xcache), altrimenti apt-get sostituirà di nuovo l'istanza PHP con 5.4!

Per evitare che ciò accada, puoi tenere questi pacchetti.

Possedere pacchetti usando dpkg

Per conservare i pacchetti con dpkg, puoi eseguire il seguente comando:

echo "php5 hold" | sudo dpkg --set-selections

Per contenere tutti i pacchetti PHP, esegui il seguente comando:

dpkg --get-selections | grep ^php5 | sed s/install/hold/g | sudo dpkg --set-selections

Il seguente comando ti mostrerà lo stato di mantenimento dei tuoi pacchetti php:

sudo dpkg --get-selections | grep ^php

Conservazione dei pacchetti utilizzando aptitude

Puoi anche conservare i pacchetti usando aptitude e.g.:

sudo aptitude hold php5

Rilascia:

sudo aptitude unhold php5
    
risposta data kenorb 21.11.2012 - 10:06
4

Primo esegui apt-cache showpkg php5 . Lì vedrai la versione e altre informazioni sul pacchetto php5.

Per installare una versione specifica, esegui apt-get install <package name>=<version>

Nella mia Ubuntu 11.10 sarebbe apt-get install php5=5.3.6-13ubuntu3.6

    
risposta data Luís Bianchin 28.03.2012 - 02:18
2

Ho avuto un problema simile.

Ho rimosso i repository.

Devi ricordare che php -v esegue l'eseguibile nel pacchetto php-cli , quindi devi rimuovere anche quello.

Quindi ho fatto quanto segue per tornare alla 5.3.10:

sudo apt-get remove php5-cli php5 php5-common
sudo apt-get install php5 php5-mysql php5-curl

Ora questo dovrebbe mostrare la versione desiderata:

php -v
    
risposta data Danish Javed 11.06.2012 - 15:50
2

Forse questa guida ti aiuterà: Come eseguire il downgrade di un pacchetto in Ubuntu

Quindi per scaricare e installare qualsiasi pacchetto di qualsiasi versione disponibile devi farlo:

sudo apt-get install Package=Version
    
risposta data Ten-Coin 27.03.2012 - 09:28
1

dai passaggi che hai descritto, ti sei dimenticato di apt-get update dopo aver eliminato php5.4 e rimosso il repository php5.4.

supponendo che non si abbia più il repository in fonti apt, se si esegue:

apt-get remove --purge php5 && apt-get update && apt-get install php5

dovresti tornare su 5.3

    
risposta data nathwill 28.03.2012 - 05:34

Leggi altre domande sui tag