在Ubuntu 14.04中安装PHP 5.3


35

我刚刚安装了Ubuntu 14.04,并尝试安装php 5.3。但是当我跑步时

apt-get install php5 

它正在安装php 5.5.9-1ubuntu4。我需要在系统中使用php 5.3,因为我正在处理的应用程序是使用php 5.3构建的。

我该如何实现?


1
您需要php 5.3还是php 5.5.3?

我需要php 5.3,因为我正在使用它。
Chathruaka Waas 2014年

7
拯救自己的痛苦,并切换回12.04-从您的评论中我了解到您有一个使用PHP 5.3的项目,根据我的经验,当我移至14.04时遇到了相同的问题。我所有的CakePHP项目均无法正常工作。这里给出的所有建议都可以正常工作,我可以通过@raaz回答手动构建PHP 5.3。但是请相信我,即使您成功安装了PHP 5.3,它也会与其他软件包和服务(如apache,mysql等)存在很多依赖关系问题。我花了2天的时间试图使一切正常,但最终我切换回了12.04。注意:-问题t
Nitish Dhar 2014年

2
您需要使用最新的PHP版本,因为先前的版本已过时。
2014年

Answers:


24

先决条件

如果没有它们,您将需要这两个额外的软件包:

sudo apt-get install build-essential libxml2-dev

安装PHP

在终端:

wget http://in1.php.net/distributions/php-5.3.29.tar.bz2
tar -xvf php-5.3.29.tar.bz2
cd php-5.3.29
./configure
make
make test # Neither mandatory nor a bad idea.
sudo make install

这些说明将解压缩源代码版本,并将在您的系统中安装php。


使用make命令时导致出现错误。root @ Chathuraka-Dell:〜/ php-5.3.28#make make:***未指定目标,也未找到任何makefile。停止。root @ Chathuraka-Dell:〜/ php-5.3.28#make install make:***没有规则进行目标`install'。停止。
Chathruaka Waas 2014年

@ChathruakaWaas ./configure完成后得到了什么?我需要那本日志。使用pastebin并给我链接
2014年

3
使用apt-get install libxml2-dev
复杂的

2
它对我来说很好用,但是谁知道我的系统上还有哪些额外的库...尽管我做的另一件事是sudo直到make install命令才使用。那是唯一需要的东西sudo
Jacob Minshall 2014年

3
另外,由于我已经安装了php5,因此我不得不sudo apt-get purge php5 && sudo apt-get install libxml2-dev
jmunsch 2014年

9

您可以使用Eugene San PPA在Ubuntu 14.04中安装php 5.3。

跟着这些步骤:

sudo add-apt-repository ppa:eugenesan/ppa

sudo apt-get update

sudo apt-get install php5

按照指示进行操作,结果就是这样。dpkg:依赖性问题阻止php5的配置:php5依赖于libapache2-mod-php5(> = 5.3.2-1ubuntu4)| libapache2-mod-php5filter(> = 5.3.2-1ubuntu4)| php5-cgi(> = 5.3.2-1ubuntu4); 但是:未安装软件包libapache2-mod-php5。未安装软件包libapache2-mod-php5filter。未安装软件包php5-cgi。dpkg:错误处理软件包php5(
install

按照编辑进行查看。

3
不起作用 我已经尝试过,但最终仍安装了5.5.9
Eugene

2
这是行不通的
。–

2
您可以ppa:sergey-dryabzhinsky/php53改用。
nnyby

5

需要一遍又一遍地说:不要运行过时的软件。

PHP 5.3已于2014年8月14日到期,即在撰写此答案的1年零8个月前。

使用过时的报废软件只会给您带来痛苦和安全漏洞,除非您可以花时间来研究自上一个PHP 5.3.x版本以来针对PHP的所有现有安全漏洞,并仔细地从其他版本中挑选出安全补丁。最近的PHP发布了您自己。

我肯定会建议您按照PHP迁移指南来修复需要PHP 5.3的软件:

我什至建议直接使用PHP 5.6(甚至PHP 7.0),因为它将在2018年12月31日之前提供安全支持。迁移指南在这里:

将代码迁移到更新的PHP代码似乎是一笔巨大的投资,但是最终这将节省您的时间和金钱,因为运行过时的软件会带来严重的安全风险,尤其是在与互联网连接不良的情况下,即使运行当内部网络受到攻击时,限制在有限网络内部的防火墙会带来安全风险。

第二种选择是使用具有PHP 5.3.10-1ubuntu3.22且具有Canonical维护人员准备的安全补丁的Ubuntu 12.04 LTS。您可能会认为5.3.10小于5.3.29,但是事实是Ubuntu 12.04 LTS中的PHP版本比原始上游PHP 5.3.29具有更少(严重)的安全漏洞,因为Ubuntu的PHP维护者正在关注安全漏洞和修补PHP,以减轻软件包中的严重漏洞。


16
在一个完美的世界中,是的,但是不幸的是,有时您需要复制过期且无法使用的旧式服务器。为了模拟生产环境,您实际上需要能够安装旧版软件包。然后,一旦有了模拟的1:1测试环境,就可以开始更新过程(如果适用于您的方案)。
迪伦·皮尔斯

一个示例是使用旧版本的ioncube编码的php源代码。您必须安装旧的php和loader版本。
Dominic Cerisano

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.