Ubuntu 10.04下安装PHP5.2

原因
Ubuntu 10.04的PHP版本是5.3,兼容性问题一堆,要换回稳定的5.2,这里的方法是安装9.10的PHP 5.2包,其他方法参考底部链接。

操作
sudo gedit /etc/apt/sources.list.d/karmic.list


deb karmic main restricted universe multiverse
deb-src karmic main restricted universe multiverse
deb karmic-updates main restricted universe multiverse
deb-src karmic-updates main restricted universe multiverse
deb karmic-security main restricted universe multiverse
deb
deb-src karmic-security main restricted universe multiverse

sudo gedit /etc/apt/preferences.d/php

Package: libapache2-mod-php5
Pin: version 5.2.10*
Pin-Priority: 991

Package: libapache2-mod-php5filter
Pin: version 5.2.10*
Pin-Priority: 991

Package: php-pear
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-cgi
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-cli
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-common
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-curl
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-dbg
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-dev
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-gd
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-gmp
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-ldap
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-mhash
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-MySQL
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-odbc
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-pgsql
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-pspell
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-recode
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-snmp
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-sqlite
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-sybase
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-tidy
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-xmlrpc
Pin: version 5.2.10*
Pin-Priority: 991

Package: php5-xsl
Pin: version 5.2.10*
Pin-Priority: 991

新建脚本文件php2.5

#! /bin/sh -e
# Script to install PHP 5.2 from 9.10 on 10.04
# And pin it so it does not get updated
# package available and may be installed later
PKGSAVAILABLE="`aptitude search -F '%p' php5` php-pear"
PKGSINSTALLED=`dpkg -l | grep php | awk '{print $2}'`
aptitude remove $PKGSINSTALLED
# disable duplicate entries
grep 'ubuntu.com' /etc/apt/sources.list | sed s/lucid/karmic/g > tee /etc/apt/sources.list.d/karmic.list
for PACKAGE in $PKGSAVAILABLE
do
# aptitude seems to use /etc/apt/preferences but not /etc/apt/preferences.d/*
# cf https://bugs.launchpad.net/ubuntu/+source/aptitude/+bug/508545
if egrep -q "Package: ?${PACKAGE}$" /etc/apt/preferences
then
echo "$PACKAGE already in preference"
else
echo "\nPackage: ${PACKAGE}\nPin: release a=karmic\nPin-Priority: 991" >> /etc/apt/preferences
fi
done
aptitude update
aptitude install $PKGSINSTALLED
改为可执行,用root账号运行

sudo chmod +x php2.5./php2.5

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wyzfds.html