Làm thế nào để quay trở lại PHP 5.2?


13

Tôi vừa cài đặt 10.04 LTS trên máy chủ phát triển của mình nhưng hệ thống mà tôi cần chạy trên nó (thương mại điện tử Magento) không tương thích với PHP 5.3, phiên bản Ubuntu có phiên bản mới nhất. Có cách nào an toàn và không cần nâng cấp để cài đặt PHP 5.2 hay sẽ dễ sử dụng phiên bản Ubuntu cũ hơn?

Câu trả lời:


9

Bạn có thể sử dụng ppa của tôi , mà tôi đã tạo ra cho mục đích này. Xin lưu ý về việc ghim là cần thiết. Ngoài ra, năng khiếu sẽ không nhận ra ghim. Bạn phải sử dụng phương pháp cụ thể năng khiếu nếu bạn muốn sử dụng nó.

Lưu ý - đây chỉ dành cho 10.04 (sáng suốt)


1
Trong trường hợp PPA của bạn?
Nathan Osman

Xin lỗi .. Tôi không nhanh như vậy: D launchpad.net/~txwikinger/+archive/php5.2
txwikinger

Bạn cũng có thể giải thích những gì tôi nên làm với ppa này?
silvo

@silvo: bạn cần thêm ppa vào danh sách nguồn của mình, bằng cách sử dụng trình quản lý gói của bạn hoặc sử dụng add-apt-repository trên dòng lệnh. Các chi tiết cho ppa có trên trang web của ppa.
txwikinger

Đây là khá nhiều câu trả lời hoàn hảo, cảm ơn. Đối với những người không chắc chắn, để thêm ppa vào nguồn của bạn, hãy thực hiện sudo add-apt-repository ppa:txwikinger/php5.2từ dòng lệnh. Hãy chắc chắn theo liên kết ppa trong bài và áp dụng giải pháp ghim của txwikinger. Hãy chắc chắn rằng bạn chạy sudo apt-get updatetrước khi bạn thử và cài đặt các gói!
cá adamnfish

2

Có thể sử dụng các gói nghiệp và ghim chúng với năng khiếu. Điều này có thể được thực hiện bằng cách sử dụng các lệnh này:

# 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

Có cái này từ văn bản liên kết



2

Gần đây tôi đã cố gắng tự giải quyết vấn đề tương tự. Thay vì thực hiện các thay đổi đối với việc quản lý gói, tôi đã tự biên dịch PHP 5.2.17 từ mã nguồn và sau đó sử dụng chương trình Checkinstall để cài đặt gói .deb mới trên hệ thống của tôi.

Tôi đã viết các bước trong một bài đăng trên blog, Biên dịch PHP 5.2 cho Ubuntu 10.10 , nhưng về cơ bản các bước liên quan đến các bước sau:

  1. Tải xuống nguồn PHP (http://php.net/doads.php) về / usr / local / src
  2. Định cấu hình nguồn, đọc tài liệu CÀI ĐẶT và đầu ra từ ./cool - trợ giúp

lệnh configure của tôi trông như thế này:

./configure --prefix=/opt --with-apxs2=/usr/bin/apxs2 --with-curl=/usr/lib --with-pgsql --with-pear --with-mysql --with-gd
  1. Biên dịch nguồn bằng cách sử dụng 'make'
  2. Cài đặt gói đã biên dịch bằng 'checkinstall'

Và đó là nó. Tôi đã cài đặt Apache2 bằng Synaptic (bạn cần sử dụng gói apache2-mpm-prefork để sử dụng với PHP). Ngoài ra nếu bạn đã cài đặt bất kỳ nhịp điệu PHP5 nào, bạn sẽ cần gỡ cài đặt chúng trước khi thử cài đặt gói biên dịch của riêng bạn.

Tự mình biên dịch gói thực sự không mất nhiều thời gian và là một trải nghiệm tốt nếu bạn chưa thực hiện nó trên máy Ubuntu.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.