Com pressa? Clique aqui para ir direto ao comando.
Durante nosso trabalho, é bem comum pularmos de servidor em servidor, realizando ajustes nos sites de nossos clientes. Como não obrigamos uma hospedagem específica, nós acabamos por trabalhar em diferentes ambientes – com diferentes configurações.
Nós atendemos uma empresa de Porto Alegre que pertence a um grupo de 5 empresas. Com a ocorrência da pandemia do COVID, a empresa optou por migrar todos os sites para o mesmo servidor, com o objetivo de reduzir custos.
Nessa migração, o ambiente de execução do site mudou e, principalmente, a versão de linha de comando do PHP também.
Versão do PHP do Apache vs Versão da linha de comando
Nossa primeira preocupação foi se o ambiente novo estaria rodando com a versão “atual” do PHP 7.0 e, por sorte, estava. Mas quando acessamos via terminal, a versão que estava disponível era a 5.4.
Isso fez com que não fosse possível executar os comandos do composer que já havíamos configurado. Analisando pelo phpinfo(), nós confirmávamos que o apache estava optando pela versão correta do PHP (>7.0).
Agora, quando chamávamos um php –info, nós recebíamos a versão 5.4 como resposta.
Ok, sem problemas. Agora só precisamos alterar a versão do CLI para 7.0, mas não seria possível, pois essa alteração poderia afetar os outros sites do servidor.
Criando uma seção com PHP >7.0
Geralmente, trabalhamos com servidores Ubuntu, na versão 16.04 ou 18.04, mas esse servidor era um CentOS. Com isso, algumas coisas eram diferentes e eu não sabia exatamente como alterar a versão de linha de comando.
Mas, descobri um comando que nos permite executar um terminal com a versão desejada de um programa, o SCL:
scl enable rh-php72 bash
Após olhar a documentação do SCL e de fazer alguns testes, conseguimos continuar rodando os mesmos comandos CLI que já havíamos configurado no ambiente antigo.
Sempre aprendendo
Aqui na Doggus nós não temos medo de aprender coisas novas e também sabemos que não tem como fugir. Ou aprendemos ou vamos minguando.
Sei que muitos já devem conhecer esse comando e devem achar algo simples, mas chegou a nossa vez de aprender e de usar. Espero que esse texto possa ajudar a equipe da Doggus no futuro e outras pessoas também.
Comentários