Este guia detalhado demonstra como instalar e configurar o PHP 7.3 no Debian 9 (Stretch) e Debian 8 (Jessie). A versão 7.3 do PHP oferece melhorias significativas de performance, correções de bugs críticos e novos recursos que aumentam a produtividade no desenvolvimento.

O PHP 7.3 introduz recursos como flexible heredoc/nowdoc syntax, melhor tratamento de arrays e correções importantes de segurança. Para projetos de desenvolvimento web, esta atualização é fundamental para manter aplicações modernas e seguras.

Preparação do Sistema Debian

Antes de iniciar a instalação do PHP 7.3, atualize completamente seu sistema Debian. Esta etapa garante compatibilidade entre pacotes e evita conflitos de dependências.

sudo apt update
sudo apt upgrade -y

Durante o processo de upgrade, o sistema pode solicitar confirmações para serviços críticos. Aceite as atualizações para manter a segurança do sistema.

Configuração do Repositório Sury

O Debian não inclui o PHP 7.3 em seus repositórios oficiais. Utilizaremos o repositório Sury, mantido por Ond?ej Surý, que fornece versões atualizadas do PHP para distribuições Debian e Ubuntu.

Instale os pacotes necessários para adicionar repositórios HTTPS:

sudo apt -y install lsb-release apt-transport-https ca-certificates wget

Adicione a chave GPG do repositório Sury:

sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Configure o repositório para sua versão específica do Debian:

echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list

Instalação do PHP 7.3

Atualize a lista de pacotes para incluir o novo repositório:

sudo apt update

Instale o PHP 7.3 e suas extensões fundamentais:

sudo apt install php7.3 php7.3-cli php7.3-common php7.3-opcache

Para servidores web que utilizam hosting web com Apache ou Nginx, instale também:

sudo apt install php7.3-fpm php7.3-mysql php7.3-xml php7.3-mbstring php7.3-curl

Verificação da Instalação

Confirme se o PHP 7.3 foi instalado corretamente verificando a versão:

php -v

A saída esperada deve ser similar a:

PHP 7.3.33-1+ubuntu20.04.1+deb.sury.org+1 (cli) (built: Dec 5 2021 11:22:28) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.33, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.3.33, Copyright (c) 1999-2018, by Zend Technologies

Extensões PHP Essenciais

Para desenvolvimento completo, instale extensões adicionais conforme suas necessidades:

Extensões para Banco de Dados

sudo apt install php7.3-mysql php7.3-pgsql php7.3-sqlite3

Extensões para Desenvolvimento Web

sudo apt install php7.3-json php7.3-xml php7.3-mbstring php7.3-zip php7.3-gd

Extensões para Cache e Performance

sudo apt install php7.3-opcache php7.3-redis php7.3-memcached

Configuração de Múltiplas Versões

Se você mantém projetos com diferentes versões do PHP, utilize o comando update-alternatives para alternar entre versões:

sudo update-alternatives --install /usr/bin/php php /usr/bin/php7.3 73
sudo update-alternatives --config php

Configuração do PHP-FPM

Para servidores web, inicie e habilite o serviço PHP-FPM:

sudo systemctl enable php7.3-fpm
sudo systemctl start php7.3-fpm
sudo systemctl status php7.3-fpm

O PHP-FPM melhora significativamente a performance em aplicações web de alto tráfego, gerenciando processos PHP de forma mais eficiente.

Verificação de Extensões Instaladas

Liste todas as extensões PHP disponíveis:

php -m

Para informações detalhadas sobre a configuração do PHP:

php --ini

Solução de Problemas Comuns

Se encontrar erro de chave GPG, remova e adicione novamente:

sudo rm /etc/apt/trusted.gpg.d/php.gpg
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Para conflitos de dependências, utilize:

sudo apt --fix-broken install