Wie kann ich ein Rollback auf PHP 5.2 durchführen?

13

Ich habe gerade eine 10.04 LTS auf meinem Entwicklungsserver installiert, aber das System, auf dem ich laufen muss (Magento E-Commerce), ist nicht kompatibel mit PHP 5.3, das mit der neuesten Version von Ubuntu geliefert wird. Gibt es eine sichere und aktualisierungssichere Möglichkeit, PHP 5.2 zu installieren, oder ist es einfacher, eine ältere Version von Ubuntu zu verwenden?

silvo
quelle

Antworten:

9

Sie können mein ppa verwenden , das ich zu diesem Zweck erstellt habe. Bitte beachten Sie die notwendigen Verankerungen. Auch wird Eignung das Feststecken nicht erkennen. Sie müssen die anpassungsspezifische Methode verwenden, wenn Sie sie verwenden möchten.

Hinweis - Dies ist nur für 10.04 (klar)

txwikinger
quelle
1
Wo ist dein PPA?
Nathan Osman
Leider .. Ich bin nicht so schnell: D launchpad.net/~txwikinger/+archive/php5.2
txwikinger
Kannst du mir auch erklären, was ich mit diesem ppa machen soll?
Silvo
@silvo: Sie müssen das ppa entweder mithilfe Ihres Paketmanagers oder mithilfe von add-apt-repository in der Befehlszeile zu Ihren Quellenlisten hinzufügen. Die Details zum ppa sind auf der Website des ppa zu finden.
txwikinger
Dies ist so ziemlich die perfekte Antwort, danke. Wenn Sie sich nicht sicher sind, ob Sie ppa zu Ihren Quellen hinzufügen möchten, können Sie dies sudo add-apt-repository ppa:txwikinger/php5.2über die Befehlszeile tun . Folgen Sie unbedingt dem ppa-Link im Beitrag und wenden Sie die Fixierlösung von txwikinger an. Stellen Sie sicher, dass Sie ausgeführt werden, sudo apt-get updatebevor Sie versuchen, die Pakete zu installieren!
Adamnfish
2

Es ist möglich, karmische Pakete zu verwenden und sie mit Eignung festzunageln. Dies kann mit den folgenden Befehlen erfolgen:

# 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

Habe das aus dem Linktext

kone4040
quelle
2

Ich habe vor kurzem versucht, das gleiche Problem selbst zu lösen. Anstatt Änderungen an der Paketverwaltung vorzunehmen, habe ich PHP 5.2.17 selbst aus dem Quellcode kompiliert und dann mit dem Programm Checkinstall das neue .deb-Paket auf meinem System installiert.

Ich habe die Schritte in einem Blogbeitrag geschrieben, in dem PHP 5.2 für Ubuntu 10.10 kompiliert wurde , aber die Schritte beinhalteten im Wesentlichen Folgendes:

  1. Laden Sie den PHP-Quellcode (http://php.net/downloads.php) in das Verzeichnis / usr / local / src herunter
  2. Konfigurieren Sie die Quelle, lesen Sie das INSTALL- Dokument und geben Sie es über ./configure --help aus

mein configure befehl sah so aus:

./configure --prefix=/opt --with-apxs2=/usr/bin/apxs2 --with-curl=/usr/lib --with-pgsql --with-pear --with-mysql --with-gd
  1. Kompiliere die Quelle mit 'make'
  2. Installieren Sie das kompilierte Paket mit 'checkinstall'

Und das war es. Ich hatte Apache2 bereits mit Synaptic installiert (Sie müssen das Paket apache2-mpm-prefork für die Verwendung mit PHP verwenden). Wenn Sie bereits PHP5-Pakete installiert haben, müssen Sie diese deinstallieren, bevor Sie versuchen, Ihr eigenes kompiliertes Paket zu installieren.

Das Paket selbst zu kompilieren dauert wirklich nicht lange und ist eine gute Erfahrung, wenn Sie es noch nicht auf Ihrem Ubuntu-Rechner getan haben.


quelle