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が必要です。
チャスルアカワース

7
悲惨さを省き、12.04に切り替えます-コメントから、PHP 5.3を使用するプロジェクトがあることを理解しています。私の経験から、14.04に移動したときに同じ問題が発生しました。すべてのCakePHPプロジェクトが機能しませんでした。ここで与えられたすべての提案は機能します。@ raazの回答に従って、PHP 5.3を手動でビルドすることでインストールできました。しかし、PHP 5.3を正常にインストールしたとしても、apache、mysqlなどの他のパッケージとサービスに多くの依存関係の問題がありますが、私を信頼してください。注:-質問t
ニティシュダー

2
以前のバージョンは廃止されているため、最新のPHPバージョンを使用する必要があります。
ルシオ

回答:


24

前提条件

持っていない場合は、これら2つの追加パッケージが必要です。

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:***ターゲットが指定されておらず、メイクファイルが見つかりません。やめる。root @ Chathuraka-Dell:〜/ php-5.3.28#make install make:***ターゲットを「インストール」するルールはありません。やめる。
チャスルアカワース

@ChathruakaWaas ./configureを実行した後、あなたは何を得ましたか そのログが必要です。使用ペーストビンと私はリンク与える
rɑːdʒɑ

3
apt-get install libxml2-devを使用
複雑な14

2
私は違っやった一つのことは、私は使用しませんでしたけど...それは私のために罰金を働いたが、誰が、余分なライブラリは、私は私のシステムで持っているものを知っているsudoのmake installコマンドをするまで。それは何かが必要な唯一の時間ですsudo
ジェイコブミンシャル

3
また、私はすでにphp5をインストールしていたので、必要がありましたsudo apt-get purge php5 && sudo apt-get install libxml2-dev
jmunsch 14

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):依存関係の問題-処理中に未構成エラーが発生しました:php5
Chathruaka Waas

編集に従ってください。

3
動作しません。試しましたが、最終的にはまだ5.5.9をインストールしました
Eugene

2
それは仕事ではありません...
KyungHoonキム・

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を必要とするソフトウェアを修正することをお勧めします。

また、2018年12月31日までセキュリティがサポートされるため、PHP 5.6(またはPHP 7.0)に直接進むことをお勧めします。移行ガイドは次のとおりです。

新しいPHPコードへのコードの移行は大きな投資のように思えるかもしれませんが、特に大きな悪意のあるインターネットとインターフェースをとる場合でも、古いソフトウェアを実行することは深刻なセキュリティリスクであるため、時間とお金を節約できます制限されたネットワーク内にファイアウォールを設置すると、内部ネットワークが攻撃されたときにセキュリティ上のリスクが生じます。

2番目の選択肢は、PHP 5.3.10-1ubuntu3.22を含むUbuntu 12.04 LTSをCanonicalメンテナーが準備したセキュリティパッチと共に使用することです。5.3.10は5.3.29よりも小さいと思うかもしれませんが、実際のところ、Ubuntu 12.04 LTSのPHPバージョンは、PHP 5.3.29の上流のPHPメンテナーがセキュリティの脆弱性とパッケージの深刻な脆弱性を軽減するためのPHPのパッチ。


16
完璧な世界ではありますが、残念ながら、時代遅れで手に負えないレガシーサーバーを複製する必要がある場合があります。実稼働環境を仮想的にモックするには、レガシーパッケージをインストールできる必要があります。次に、模擬テスト環境が1:1になったら、更新プロセスを開始できます(シナリオに該当する場合)。
ディラン・ピアース

この例は、古いバージョンのioncubeでエンコードされたphpソースコードです。古いバージョンのPHPとローダーをインストールする必要があります。
ドミニクチェリサーノ

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.