Ubuntu 16.04にphp5をインストールできません


53

そのため、最近、ハードウェアが15.10の新しいものだったので、新しいラップトップに最初のUbuntu、正確には16.04の毎日のビルドをインストールしました。今、私はそれを設定している最中で、php5といくつかの拡張機能をインストールしたいです。

実行するsudo apt-get install libapache2-mod-php5と、php5とlibapache2に使用できるインストールパッケージがないというエラーメッセージが表示されます。

エラーメッセージはドイツ語なので、これが役立つとは思いませんが、とにかくここにあります。:-) E: For package »libapache2-mod-php5« existiert kein Installationskandidat.

apt-getリポジトリを追加する必要がありますか?それとも私は何を間違えていますか?


ここをご覧

回答:


76

TL; DR:php5にとどまる場合は、Ubuntu 14.04 LTSにとどまる必要があります。

Ubuntu 16.04 LTSでPHP 7.0を使用する

Ubuntu 16.04は、PHPパッケージ用の新しいインフラストラクチャを備えたPHP 7.0に切り替えました。だから、いや、Ubuntu 16.04にphp5をインストールすることはできませんが、次のようにしてPHP 7.0パッケージをインストールできます。

apt-get install libapache2-mod-php

これにより、最新のPHPバージョンに依存する仮想パッケージがインストールさlibapache2-mod-php7.0れ、依存関係としてプルされます。

あなたは拡張子を探している場合は、いつものようにも(例えば、バージョンレスバリアントを使用するphp-apcu代わりに、php7.0-apcuスムーズなアップグレードを可能にするために、バージョンなし)PECL拡張がパッケージされているよう。

PHP PPAを使用してPHP 5.6とPHP 7.0を同時にインストールする

を使用してPHP 5.6パッケージを共同インストールするオプションがありますppa:ondrej/php

詳細については、その答えをご覧ください:https : //askubuntu.com/a/762161/309221

上記のリンクから抽出:

libapache2-mod-phpApacheでPHPを有効にする適切な方法であると仮定して、次のように進めることができます。

sudo add-apt-repository ppa:ondrej/php

sudo apt-get update

sudo apt-get install php7.0 php5.6 php5.6-mysql php-gettext php5.6-mbstring php-xdebug libapache2-mod-php5.6 libapache2-mod-php7.0

PHPバージョンの切り替え(Apache):

  • php5.6からphp7.0:
    sudo a2dismod php5.6 ; sudo a2enmod php7.0 ; sudo service apache2 restart

  • php7.0からphp5.6:
    sudo a2dismod php7.0 ; sudo a2enmod php5.6 ; sudo service apache2 restart


2
いいえ、XenialリポジトリにはPHP 5.xパッケージはありません。PPAのみ。
oerdnj

あなたが正しいように見えます:bugs.launchpad.net/ubuntu/+source/php5/+bug/1522422
NoBugs

php5.6に切り替えると、「制御プロセスがエラーコードで終了したため、apache2.serviceのジョブが失敗しました。詳細については、「systemctl status apache2.service」および「journalctl -xe」を参照してください。
lyhong

そして、ジャーナルは何と言っていますか?
oerdnj

このような何かを見つけましたapache2:/etc/apache2/apache2.confの140行目の構文エラー:/ eの3行目の構文エラー
lyhong

25

編集:受け入れられた答えは、PHP 5.6と7.0を共同インストールする方法を明示的に言っていないので、拡張したかったです。

詳細については、その答えをご覧ください:https : //askubuntu.com/a/762161/309221

上記のリンクから抽出:

libapache2-mod-phpApacheでPHPを有効にする適切な方法であると仮定して、次のように進めることができます。

sudo add-apt-repository ppa:ondrej/php

sudo apt-get update

sudo apt-get install php7.0 php5.6 php5.6-mysql php-gettext php5.6-mbstring php-xdebug libapache2-mod-php5.6 libapache2-mod-php7.0

PHPバージョンの切り替え(Apache):

  • php5.6からphp7.0:
    sudo a2dismod php5.6 ; sudo a2enmod php7.0 ; sudo service apache2 restart

  • php7.0からphp5.6:
    sudo a2dismod php7.0 ; sudo a2enmod php5.6 ; sudo service apache2 restart


1
参考:使用するPPAは、承認済みの回答を書いた人によって管理されています。そして、その答えの最後の行:「ppa:ondrej / phpを使用してPHP 5.6パッケージを共同インストールするオプションがあります」。php5パッケージもインストールしないことに注意してください。しかし、php5.6
muru

1
パッケージングと設定ファイルの場所には多くの違いがあり、古いphp5パッケージを探している人は新しいパッケージに驚くでしょう。
ムル

回答を編集したので、受け入れられた回答が間違っていたとは言わず、それを拡張するだけです。
FlavioEscobar

@NoBugs imagick拡張機能がパッケージ化されています。真実かどうかを少なくとも基本的なチェックをせずに、物を吐き出すのをやめてください。
oerdnj

@FlavioEscobar私はあなたの編集を私の答えにマージしました。答えを広げてくれてありがとう。
oerdnj
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.