Installare PHP 7.2 su Debian Stretch: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Riga 42: Riga 42:
<pre>
<pre>
php-amqp php-apcu php-apcu-bc php-gearman php-geoip php-gnupg php-igbinary php-imagick php-libsodium php-mailparse php-memcache php-memcached php-mongodb php-msgpack php-oauth php-http php-pinba php-propro php-radius php-raphf php-redis php-rrd php-smbclient php-solr php-ssh2 php-stomp php-uploadprogress php-uuid php-yaml php-zmq libapache2-mod-php7.2 libphp7.2-embed php7.2 php7.2-bcmath php7.2-bz2 php7.2-cgi php7.2-cli php7.2-common php7.2-curl php7.2-dba php7.2-dev php7.2-enchant php7.2-fpm php7.2-gd php7.2-gmp php7.2-imap php7.2-interbase php7.2-intl php7.2-json php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-odbc php7.2-opcache php7.2-pgsql php7.2-phpdbg php7.2-pspell php7.2-readline php7.2-recode php7.2-snmp php7.2-soap php7.2-sqlite3 php7.2-sybase php7.2-tidy php7.2-xml php7.2-xmlrpc php7.2-xsl php7.2-zip php-remctl php-tideways php-xdebug libapache2-mod-php7.2-dbgsym libphp7.2-embed-dbgsym php-ds php-lua php-phalcon php-sodium php7.2-bcmath-dbgsym php7.2-bz2-dbgsym php7.2-cgi-dbgsym php7.2-cli-dbgsym php7.2-common-dbgsym php7.2-curl-dbgsym php7.2-dba-dbgsym php7.2-enchant-dbgsym php7.2-fpm-dbgsym php7.2-gd-dbgsym php7.2-gmp-dbgsym php7.2-imap-dbgsym php7.2-interbase-dbgsym php7.2-intl-dbgsym php7.2-json-dbgsym php7.2-ldap-dbgsym php7.2-mbstring-dbgsym php7.2-mysql-dbgsym php7.2-odbc-dbgsym php7.2-opcache-dbgsym php7.2-pgsql-dbgsym php7.2-phpdbg-dbgsym php7.2-pspell-dbgsym php7.2-readline-dbgsym php7.2-recode-dbgsym php7.2-snmp-dbgsym php7.2-soap-dbgsym php7.2-sqlite3-dbgsym php7.2-sybase-dbgsym php7.2-tidy-dbgsym php7.2-xml-dbgsym php7.2-xmlrpc-dbgsym php7.2-zip-dbgsym php-libsodium
php-amqp php-apcu php-apcu-bc php-gearman php-geoip php-gnupg php-igbinary php-imagick php-libsodium php-mailparse php-memcache php-memcached php-mongodb php-msgpack php-oauth php-http php-pinba php-propro php-radius php-raphf php-redis php-rrd php-smbclient php-solr php-ssh2 php-stomp php-uploadprogress php-uuid php-yaml php-zmq libapache2-mod-php7.2 libphp7.2-embed php7.2 php7.2-bcmath php7.2-bz2 php7.2-cgi php7.2-cli php7.2-common php7.2-curl php7.2-dba php7.2-dev php7.2-enchant php7.2-fpm php7.2-gd php7.2-gmp php7.2-imap php7.2-interbase php7.2-intl php7.2-json php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-odbc php7.2-opcache php7.2-pgsql php7.2-phpdbg php7.2-pspell php7.2-readline php7.2-recode php7.2-snmp php7.2-soap php7.2-sqlite3 php7.2-sybase php7.2-tidy php7.2-xml php7.2-xmlrpc php7.2-xsl php7.2-zip php-remctl php-tideways php-xdebug libapache2-mod-php7.2-dbgsym libphp7.2-embed-dbgsym php-ds php-lua php-phalcon php-sodium php7.2-bcmath-dbgsym php7.2-bz2-dbgsym php7.2-cgi-dbgsym php7.2-cli-dbgsym php7.2-common-dbgsym php7.2-curl-dbgsym php7.2-dba-dbgsym php7.2-enchant-dbgsym php7.2-fpm-dbgsym php7.2-gd-dbgsym php7.2-gmp-dbgsym php7.2-imap-dbgsym php7.2-interbase-dbgsym php7.2-intl-dbgsym php7.2-json-dbgsym php7.2-ldap-dbgsym php7.2-mbstring-dbgsym php7.2-mysql-dbgsym php7.2-odbc-dbgsym php7.2-opcache-dbgsym php7.2-pgsql-dbgsym php7.2-phpdbg-dbgsym php7.2-pspell-dbgsym php7.2-readline-dbgsym php7.2-recode-dbgsym php7.2-snmp-dbgsym php7.2-soap-dbgsym php7.2-sqlite3-dbgsym php7.2-sybase-dbgsym php7.2-tidy-dbgsym php7.2-xml-dbgsym php7.2-xmlrpc-dbgsym php7.2-zip-dbgsym php-libsodium
</pre>
== Abilitazione di PHP 7.2 in Apache ==
Come ultimo passaggio, disabilitiamo PHP 7.0 in Apache e abilitiamo il 7.2:
<pre>
# a2dismod php 7.0
# a2enmod php7.2
# systemctl restart apache2
</pre>
</pre>

Versione delle 09:38, 27 dic 2018

Debian-swirl.png Versioni Compatibili

Debian 9 "stretch"

Introduzione

La versione di PHP che viene distribuita con Debian Stretch è la 7.0, che però è ufficialmente uscita di supporto nel Dicembre 2018.

Il team di sviluppo di PHP consiglia di passare alle versioni 7.2 oppure 7.3

In Debian questo può essere fatto abbastanza agevolmente, ma occorre abilitare un repository esterno.

Il Repository Sury

Il repository Sury è famoso nella comunità Debian e mantiene le versioni pacchettizzate .deb di tutte le releases di PHP. Per abilitarlo è sufficiente installare un paio di pacchetti e scaricare la chiave del repository:

# apt install apt-transport-https lsb-release ca-certificates
# wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Quindi aggiungiamo il repository nel nostro sources list:

# nano /etc/apt/sources.list
deb https://packages.sury.org/php/ stretch main

e aggiorniamo la lista dei pacchetti:

# apt update

Installazione di PHP 7.2

A questo punto siamo pronti per installare PHP 7.2.

Verifichiamo prima di tutto la versione che sta girando sulla nostra Debian:

# php -v

Quindi installiamo la nuova versione di PHP:

# apt install php7.2

Una volta installato il core di PHP possiamo verificare quali pacchetti sono presenti e installare i moduli che ci tornano comodi:

# apt search php7.2
# apt install php7.2 php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-mysql php7.2-zip php7.2-fpm php7.2-mbstring

Una lista completa dei moduli disponibili è la seguente:

php-amqp php-apcu php-apcu-bc php-gearman php-geoip php-gnupg php-igbinary php-imagick php-libsodium php-mailparse php-memcache php-memcached php-mongodb php-msgpack php-oauth php-http php-pinba php-propro php-radius php-raphf php-redis php-rrd php-smbclient php-solr php-ssh2 php-stomp php-uploadprogress php-uuid php-yaml php-zmq libapache2-mod-php7.2 libphp7.2-embed php7.2 php7.2-bcmath php7.2-bz2 php7.2-cgi php7.2-cli php7.2-common php7.2-curl php7.2-dba php7.2-dev php7.2-enchant php7.2-fpm php7.2-gd php7.2-gmp php7.2-imap php7.2-interbase php7.2-intl php7.2-json php7.2-ldap php7.2-mbstring php7.2-mysql php7.2-odbc php7.2-opcache php7.2-pgsql php7.2-phpdbg php7.2-pspell php7.2-readline php7.2-recode php7.2-snmp php7.2-soap php7.2-sqlite3 php7.2-sybase php7.2-tidy php7.2-xml php7.2-xmlrpc php7.2-xsl php7.2-zip php-remctl php-tideways php-xdebug libapache2-mod-php7.2-dbgsym libphp7.2-embed-dbgsym php-ds php-lua php-phalcon php-sodium php7.2-bcmath-dbgsym php7.2-bz2-dbgsym php7.2-cgi-dbgsym php7.2-cli-dbgsym php7.2-common-dbgsym php7.2-curl-dbgsym php7.2-dba-dbgsym php7.2-enchant-dbgsym php7.2-fpm-dbgsym php7.2-gd-dbgsym php7.2-gmp-dbgsym php7.2-imap-dbgsym php7.2-interbase-dbgsym php7.2-intl-dbgsym php7.2-json-dbgsym php7.2-ldap-dbgsym php7.2-mbstring-dbgsym php7.2-mysql-dbgsym php7.2-odbc-dbgsym php7.2-opcache-dbgsym php7.2-pgsql-dbgsym php7.2-phpdbg-dbgsym php7.2-pspell-dbgsym php7.2-readline-dbgsym php7.2-recode-dbgsym php7.2-snmp-dbgsym php7.2-soap-dbgsym php7.2-sqlite3-dbgsym php7.2-sybase-dbgsym php7.2-tidy-dbgsym php7.2-xml-dbgsym php7.2-xmlrpc-dbgsym php7.2-zip-dbgsym php-libsodium

Abilitazione di PHP 7.2 in Apache

Come ultimo passaggio, disabilitiamo PHP 7.0 in Apache e abilitiamo il 7.2:

# a2dismod php 7.0
# a2enmod php7.2
# systemctl restart apache2