我想知道是否有任何存储库可以添加以在 Ubuntu Server 12.04 上安装 php5.2.9+。
答案1
PHP 5.2 已于 2010 年 12 月终止使用,因此,尽管您有可能在互联网的某个角落找到 PPA 或 .deb 文件,但如果您希望它在 Ubuntu 12.04 上运行,您很可能必须从源代码进行编译。此外,您可能会遇到依赖项问题(特别是如果任何内容更改了它们的 API),所以请记住这一点。
也就是说,你可以在他们的 GitHub(我为您找到了 5.2.17 标签),然后使用 进行编译make
。PHP 网站还提供了有关编译 PHP 的信息。所需的版本会有所不同,但通常是“此版本或更高版本”,除非您遇到重大版本差异(例如 1.0 到 2.0)。
顺便提一下,可能值得向维护外部应用程序的人施加压力,让他们至少升级到 5.3 系列,或者更好的是 5.4 系列。从那时起,已经有大量的错误修复和安全补丁。此外,大多数工具不再支持 5.2(这意味着您无法轻松获得 Xdebug 或 PHPUnit 之类的东西,这使得维护一个大小合适且重要性合理的应用程序几乎是不可能的(我经历过))。由于 5.2 和 5.3 之间的变化,升级可能不是可以立即完成的事情,但它会产生客户需求,并有助于打破许多公司存在的错觉,即“好吧,我们的用户群不想要这个,所以我们不会提供它”(即使他们不要求它的原因是因为产品中没有它并且他们找到了解决方法,更不用说如果产品提供它,客户就会使用它了)。
答案2
我从来没有在 Ubuntu 上做过,但在Debian Squeeze使用存储库德比安·兰尼。
由于 PHP 的软件包都来自 Debian,我认为本教程将适用于 Ubuntu。
编辑存储库列表。
sudo nano /etc/apt/sources.list
在 /etc/apt/sources.list 中添加下一行:
deb http://archive.debian.org/debian-archive/debian/ lenny main contrib non-free
更新 repos 信息
sudo apt-get update
编辑 apt 的首选项...
sudo nano /etc/apt/preferences.d/php.conf
添加下一个配置:
Package: php5* Pin: release a=oldstable Pin-Priority: 700 Package: * Pin: release a=stable Pin-Priority: 600
安装 sudo apt-get install php5 -t oldstable
检查是否安装了 5.2* 版本
sudo dpkg -l | grep php5
我重复...未测试... 我在 Debian 上所做的就是...
原文来源:http://www.gustavopilla.com/2012/01/21/php-5-2-en-debian-squeeze/
答案3
任何来到这里的人都应该考虑按照本教程。
它详细解释了如何编译和设置 PHP 5.2 以及受支持的 PHP 版本以及如何仅在所需的 vhost 上使用它。