Como executar várias versões do PHP no Ubuntu 20.04

27 de julho de 2022
Ronaldo B.

Neste artigo vamos aprender a realizar a configuração de várias versões do PHP no Ubuntu. A primeira pergunta que talvez passe por nossa cabeça seja: “Mas por que fazer isso? Por que configurar mais de uma versão do PHP no mesmo servidor?” No ambiente de produção isso talvez não faça sentido realmente. Contudo, ao trabalhar no ambiente de desenvolvimento, pode ser que essa configuração se mostre necessária.

Ao testar o PHP 8 podemos ver essa necessidade. Imagine que desejamos realizar testes nas diferentes versões Alpha e Beta, até mesmo para comparar as particularidades de cada uma delas. Para não precisar remover uma versão e instalar outra toda vez, podemos configurar várias versões que podem ser executadas em paralelo. É isso o que iremos fazer neste artigo.

Essa instalação será realizada sem usar o apt-get ou outro gerenciador de pacotes. Também não iremos usar o Apache. A instalação e configuração ocorrerá a partir dos arquivos PHP que baixarmos da origem.

Instalando a versão Beta 1 do PHP 8

Nós já mostramos como realizar a instalação da versão Alpha 3 do PHP 8. Você pode conferir esse conteúdo no artigo PHP 8 - Instalação e Configuração no Ubuntu 20.04 e Windows.

O objetivo deste artigo será instalar a versão Beta 1 do PHP 8, lançada na última quinta-feira, e permitir que a versão mais antiga continue funcionando. O download dos arquivos do PHP 8 e a extração deles ocorrerá da mesma maneira que ensinamos no artigo acima. Contudo, a sua configuração será um pouco diferente.

Configurando a versão Beta 1

Primeiramente iremos criar uma pasta personalizada que irá armazenar as configurações do PHP Beta 1. Usaremos o seguinte comando:

sudo mkdir /usr/php8-beta1

Nós criamos essa pasta no diretório usr, mas poderíamos usar outro diretório se desejássemos.

Vamos agora realizar a sua configuração. Iremos adicionar a opção --prefix no comando de configuração, informando um outro diretório para ela, ou seja, o mesmo diretório que criamos agora há pouco. Usaremos o comando a seguir:

sudo ./configure --prefix=/usr/php8-beta1

Após realizar a configuração, iremos executar a instalação de fato por meio do comando sudo make && sudo make install.

Com a instalação concluída, podemos executar os comandos do PHP acessando diretamente o binário deste serviço. Por exemplo:

/usr/php8-beta1/bin/php --version

Esse comando nos retornaria o seguinte resultado:

Versão do PHP exibida no Terminal

Note que a versão foi retornada, o que mostra que o PHP foi instalado com sucesso.

Entretanto, quando trabalhamos com a linha de comando, estamos acostumados a informar apenas o nome do programa, como php --version por exemplo. Não desejamos informar o caminho absoluto até o binário todas as vezes. Como poderíamos resolver essa questão?

Uma solução é adicionar o binário do PHP de maneira personalizada ao diretório padrão que o Ubuntu usa para executar os binários do Sistema Operacional. No Ubuntu 20.04 esse diretório está em /usr/local/bin. Logo, precisamos criar uma referência neste diretório, que irá apontar para o binário original. Um comando que podemos usar é o ln, que cria links no Linux. Podemos dizer que esses links funcionam como se fossem os “atalhos para programas do Windows”, mas aplicados no ambiente Linux. Para criar o link usaremos esse comando:

sudo ln -sT /usr/php8-beta1/bin/php /usr/local/bin/php8-beta1

Agora nós temos um novo binário, chamado php8-beta1. Como ele é personalizado, poderíamos informar qualquer outro nome que desejássemos. Dessa forma, ao executar php8-beta1 --version, veremos o mesmo resultado do comando que realizamos há pouco, informando o caminho absoluto para o binário do PHP.

Se formos até o diretório /var/www/html, executarmos sudo php8-beta1 -S localhost:80 e acessarmos http://localhost/info.php no navegador, veremos o seguinte resultado:

Informações sobre a versão do PHP no navegador

Incrível! O PHP está sendo executado corretamente em nosso navegador. ?

Realizando a mesma configuração com a versão Alpha 3

Se desejássemos fazer o mesmo com a versão Alpha 3, bastaria repetir o processo:

sudo mkdir /usr/php8-alpha3
sudo ./configure --prefix=/usr/php8-alpha3
sudo make && sudo make install
sudo ln -sT /usr/php8-alpha3/bin/php /usr/local/bin/php8-alpha3

Ao executar php8-alpha3 --version, veríamos o seguinte resultado:

Informações da versão Alpha 3 no Terminal

Impressionante, não é mesmo?

Conclusão

Neste artigo realizamos a configuração de duas versões do PHP no mesmo servidor Ubuntu. O melhor é que fizemos isso sem usar o apt-get ou outra ferramenta, como comentamos no início. Agora estamos preparados para realizar a configuração de quantas versões desejarmos!!! ?

Se você gostou deste post sobre PHP 8, não deixe de conferir os conteúdos diários que publicamos em nosso canal no YouTube.

Até o próximo artigo :)

Hcode: Utilizamos cookies para a personalização de anúncios e experiências de navegação dentro de nosso site. Ao continuar navegando, você concorda com as nossas Política de Privacidade.