Як відкатати до PHP 5.2?


13

Я тільки що встановив 10,04 LTS на своєму сервері розробки, але система, яку мені потрібно запустити на ньому (Magento ecommerce), не сумісна з PHP 5.3, який постачається з новітньою версією Ubuntu. Чи існує безпечний і надійний спосіб встановлення PHP 5.2 або буде легше використовувати старішу версію Ubuntu?

Відповіді:


9

Ви можете використовувати мій ppa , який я створив для цієї мети. Будь ласка, зверніть увагу на необхідне закріплення. Крім того, здатність не розпізнає прив’язку. Ви повинні використовувати метод, що відповідає специфічним можливостям, якщо ви хочете його використовувати.

Примітка - це лише для 10,04 (зрозуміло)


1
Де знаходиться ваш PPA?
Натан Осман

Вибачте ... Я не такий швидкий: D launchpad.net/~txwikinger/+archive/php5.2
txwikinger

Чи можете ви також пояснити, що мені робити з цією програмою?
silvo

@silvo: вам потрібно додати ppa до списків джерел, використовуючи менеджер пакунків або використовуючи додаток-apt-сховище в командному рядку. Деталі для ppa розміщені на веб-сайті ppa.
txwikinger

Це майже ідеальна відповідь, дякую. Для тих, хто не впевнений, додавати ppa до своїх джерел робимо sudo add-apt-repository ppa:txwikinger/php5.2з командного рядка. Обов’язково перейдіть за посиланням ppa у дописі та застосуйте рішення для фіксації txwikinger. Переконайтеся, що ви запускаєтесь, sudo apt-get updateперш ніж спробувати встановити пакунки!
adamnfish

2

Можна використовувати кармічні пакети і прикріплювати їх до придатності. Це можна зробити за допомогою цих команд:

# 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

Отримав це з тексту посилання



2

Нещодавно я сам намагався вирішити ту саму проблему. Замість внесення змін до управління пакетом я сам скомпілював PHP 5.2.17 з вихідного коду, а потім застосував програму Checkinstall для встановлення нового пакету .deb у моїй системі.

Етапи я записав у публікації в блозі, складання PHP 5.2 для Ubuntu 10.10 , але в основному кроки включали наступне:

  1. Завантажте джерело PHP (http://php.net/downloads.php) в / usr / local / src
  2. Налаштуйте джерело, прочитавши документ INSTALL та виведіть з ./configure --help

моя команда конфігурації виглядала так:

./configure --prefix=/opt --with-apxs2=/usr/bin/apxs2 --with-curl=/usr/lib --with-pgsql --with-pear --with-mysql --with-gd
  1. Складіть джерело за допомогою "make"
  2. Встановіть складений пакет за допомогою "checkinstall"

І це було все. Я вже встановив Apache2 за допомогою Synaptic (для використання з PHP потрібно використовувати пакет apache2-mpm-prefork). Крім того, якщо у вас вже були встановлені будь-які пакунки PHP5, вам слід буде видалити їх перед тим, як спробувати встановити власний складений пакет.

Самостійне складання пакету не займе багато часу, і це хороший досвід, якщо ви цього ще не робили на своїй машині Ubuntu.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.