Impossibile installare php5 su Ubuntu 16.04


53

quindi di recente ho installato il mio primo Ubuntu, per essere precisi, una build giornaliera di 16.04, sul mio nuovo laptop poiché l'hardware era nuovo per il 15.10. Ora sono in procinto di configurarlo e voglio installare php5 e alcune estensioni.

Quando sudo apt-get install libapache2-mod-php5eseguo viene visualizzato il messaggio di errore che non è disponibile alcun pacchetto di installazione per php5 e libapache2.

Il messaggio di errore è in tedesco, quindi dubito che ciò possa aiutare, ma comunque è così. :-) E: For package »libapache2-mod-php5« existiert kein Installationskandidat.

Devo aggiungere un repository apt-get? O cosa sto sbagliando?



Risposte:


76

TL; DR: se vuoi rimanere con php5, dovrai rimanere su Ubuntu 14.04 LTS

Utilizzo di PHP 7.0 su Ubuntu 16.04 LTS

Ubuntu 16.04 è passato a PHP 7.0 con una nuova infrastruttura per il pacchetto PHP. Quindi, no, non puoi installare php5 su Ubuntu 16.04, ma puoi installare i pacchetti PHP 7.0 con:

apt-get install libapache2-mod-php

Ciò installerà un pacchetto virtuale che dipende dall'ultima versione di PHP e verrà estratto libapache2-mod-php7.0come dipendenza.

Se stai cercando estensioni, usa sempre anche una variante senza versione (ad es. php-apcuInvece di php7.0-apcu) poiché le estensioni PECL sono impacchettate senza la versione per consentire aggiornamenti regolari.

Utilizzo di PHP PPA per reinstallare PHP 5.6 con PHP 7.0

C'è un'opzione per installare contemporaneamente i pacchetti PHP 5.6 ppa:ondrej/php.

Per ulteriori informazioni, consultare la risposta: https://askubuntu.com/a/762161/309221

Estratto dal link sopra:

Supponendo che libapache2-mod-phpsia un modo adatto per abilitare PHP in Apache per te, puoi procedere in questo modo:

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

Cambia versione di PHP (Apache):

  • da php5.6 a php7.0:
    sudo a2dismod php5.6 ; sudo a2enmod php7.0 ; sudo service apache2 restart

  • da php7.0 a php5.6:
    sudo a2dismod php7.0 ; sudo a2enmod php5.6 ; sudo service apache2 restart


2
No, non ci sono pacchetti PHP 5.x nei repository Xenial. Solo nel PPA.
oerdnj,


Quando passo a php5.6, ho ricevuto l'errore "Il processo per apache2.service non è riuscito perché il processo di controllo è terminato con il codice di errore. Vedere" status systemctl apache2.service "e" journalctl -xe "per i dettagli.".
Lyhong,

E cosa dice il diario?
oerdnj,

trovato qualcosa del genere apache2: errore di sintassi nella riga 140 di /etc/apache2/apache2.conf: errore di sintassi nella riga 3 di / e
lyhong

25

EDIT: la risposta accettata non dice esplicitamente come co-installare PHP 5.6 e 7.0, quindi volevo estenderlo.

Per ulteriori informazioni, consultare la risposta: https://askubuntu.com/a/762161/309221

Estratto dal link sopra:

Supponendo che libapache2-mod-phpsia un modo adatto per abilitare PHP in Apache per te, puoi procedere in questo modo:

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

Cambia versione di PHP (Apache):

  • da php5.6 a php7.0:
    sudo a2dismod php5.6 ; sudo a2enmod php7.0 ; sudo service apache2 restart

  • da php7.0 a php5.6:
    sudo a2dismod php7.0 ; sudo a2enmod php5.6 ; sudo service apache2 restart


1
Cordiali saluti: Il PPA che usi è gestito dalla persona che ha scritto la risposta accettata. E l'ultima riga in quella risposta: "C'è un'opzione per co-installare i pacchetti PHP 5.6 usando ppa: ondrej / php". Nota che non stai installando neanche pacchetti php5, ma php5.6
muru

1
Ci sono una serie di differenze nella confezione e nella posizione dei file di configurazione che chiunque cerchi i vecchi pacchetti php5 sarebbe sorpreso da quelli nuovi.
muru,

Ho modificato la mia risposta in modo che non dica che la risposta accettata era errata, ma la estende solo.
FlavioEscobar,

@NoBugs Ha un'estensione di immagini impacchettata. Si prega di smettere di vomitare cose senza almeno verificare di base se sono vere o no.
oerdnj,

@FlavioEscobar Ho unito le tue modifiche nella mia risposta. Grazie per l'estensione della risposta.
oerdnj,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.