在 Debian Jessie 中,默认情况下,我使用 安装 PHP 5.6 apt-get install php5
。问题是,我正在处理的项目有严重弃用的功能,以至于项目无法正常工作,而我却无法抑制任何这些弃用警告。它们就是不会消失。
在与我的一位同事商量后,我决定安装一个旧版本的 PHP,即 5.3.10。这是他正在使用的版本,项目运行良好。
我一直在搜索 debian 软件包,并设法安装了 PHP 5.3.29(用于 Wheezy),但该项目仍然无法正常运行。
我该如何在 Jessie 上安装 5.3.10?我在这里找到了所需的源代码。 http://php.net/releases/ 但老实说,我不知道我需要 PHP 的哪些功能,也不知道构建时需要使用哪个 apache 文件夹。在线指南显示了类似于 apache/bin 的内容,但我不知道我的电脑上有这样的文件夹(是的,apache 已安装并正常运行)。
还有其他方法吗,还是我只能从头开始构建 PHP?Jessie 存储库中几乎没有 5.3.10 包。只有 5.6。
答案1
我不建议将 PHP 版本向后退,但如果您别无选择,那么只需将 Debian 快照添加到您的存储库,然后传递版本号进行安装。
您可以在此处查看完整解释:http://mstd.eu/index.php/2016/07/04/install-old-versions-of-software-on-debian-like-php-5-3/
您可以在这里找到所需的所有信息:http://snapshot.debian.org
但如果你很懒(像我一样)只需复制并粘贴以下内容:
添加源列表:
deb http://snapshot.debian.org/archive/debian/20120221T041601Z/ unstable main
deb-src http://snapshot.debian.org/archive/debian/20120221T041601Z/ unstable main
现在更新 apt 但忽略到期日期:
apt-get -o Acquire::Check-Valid-Until=false update
现在你可以传入你需要的版本号,本例中为 5.3.10-2
apt-get install php5=5.3.10-2
如果你想知道我是如何做到这一点的,那么我可以向你提供更多信息,如果你在这种情况下在快照上找到了你需要的包:http://snapshot.debian.org/package/php5/5.3.10-2/它会给出首次添加的日期 2012-02-21 04:16:01,因此您只需将其添加到快照源列表中,如下所示:
http://snapshot.debian.org/archive/debian/yyyymmddThhmmssZ
在上述情况下,这意味着:
deb http://snapshot.debian.org/archive/debian/20120221T041601Z/