Instalando mais de uma versão do PHP com repositórios Remi

Sejam, bem vindos ao quarto post do blog, onde iremos preparar duas versões do PHP .
São as versões 5.6 e a versão 7.0 que é a versão atual da versão 25 do Fedora.

Iremos configurar o servidor Apache para realizar esta troca de maneira simples.

Iniciamos com a execução do seguinte comando

wget http://rpms.famillecollet.com/fedora/remi-release-25.rpm; sudo dnf install remi-release-25.rpm

Tendo o seguinte retorno

--2017-01-07 17:24:07--  http://rpms.famillecollet.com/fedora/remi-release-25.rpm
Resolvendo rpms.famillecollet.com (rpms.famillecollet.com)... 2001:bc8:33a1:100::1, 195.154.241.117
Conectando-se a rpms.famillecollet.com (rpms.famillecollet.com)|2001:bc8:33a1:100::1|:80... conectado.
A requisição HTTP foi enviada, aguardando resposta... 200 OK
Tamanho: 12957 (13K) [application/x-rpm]
Salvando em: “remi-release-25.rpm.1”

remi-release-25.rpm 100%[===================>]  12,65K  --.-KB/s    in 0,003s 

Failed to synchronize cache for repo 'postinstallerf-updates', desativando.
Última verificação de data de vencimento de metadados: 1:44:52 atrás em Sat Jan  7 15:39:43 2017.
Dependências resolvidas.
================================================================================
 Package            Arq.         Versão                Repo                Tam.
================================================================================
Instalando:
 remi-release       noarch       25-1.fc25.remi        @commandline        13 k

Resumo da transação
================================================================================
Instalar  1 Pacote

Tamanho total: 13 k
Tamanho depois de instalado: 4.4 k

Correto? [s/N]: s
Baixando pacotes:
Executando verificação da transação
Verificação de transação completa.
Executando teste de transação
Teste de transação completo
Executando a transação
  Instalando    : remi-release-25-1.fc25.remi.noarch                                                                                                                1/1 
  Verificando   : remi-release-25-1.fc25.remi.noarch                                                                                                                1/1 

Instalados:
  remi-release.noarch 25-1.fc25.remi                                                                                                                                    

Concluído!

 

Após isso , realizar o update

sudo dnf update

Após a instalação , iremos instalar o PHP , PHP-FPM e extensões úteis

sudo dnf --enablerepo=remi install php56-php-fpm php56-php-cli php56-php-mysqlnd php56-php-gd php56-php-imap php56-php-ldap php56-php-odbc php56-php-pear php56-php-xml php56-php-xmlrpc php56-php-magickwand php56-php-mbstring php56-php-mcrypt php56-php-mssql php56-php-snmp php56-php-soap php56-php-tidy php56-php-opcache

Obtendo a saida

Instalados:
  php56-php-cli.x86_64 5.6.28-1.fc25.remi                   php56-php-common.x86_64 5.6.28-1.fc25.remi             php56-php-fpm.x86_64 5.6.28-1.fc25.remi              
  php56-php-gd.x86_64 5.6.28-1.fc25.remi                    php56-php-imap.x86_64 5.6.28-1.fc25.remi               php56-php-ldap.x86_64 5.6.28-1.fc25.remi             
  php56-php-magickwand.x86_64 1.0.9.2-9.fc25.remi           php56-php-mbstring.x86_64 5.6.28-1.fc25.remi           php56-php-mcrypt.x86_64 5.6.28-1.fc25.remi           
  php56-php-mssql.x86_64 5.6.28-1.fc25.remi                 php56-php-mysqlnd.x86_64 5.6.28-1.fc25.remi            php56-php-odbc.x86_64 5.6.28-1.fc25.remi             
  php56-php-opcache.x86_64 5.6.28-1.fc25.remi               php56-php-pdo.x86_64 5.6.28-1.fc25.remi                php56-php-pear.noarch 1:1.10.1-7.fc25.remi           
  php56-php-pecl-jsonc.x86_64 1.3.10-1.fc25.remi            php56-php-pecl-zip.x86_64 1.13.5-1.fc25.remi           php56-php-process.x86_64 5.6.28-1.fc25.remi          
  php56-php-snmp.x86_64 5.6.28-1.fc25.remi                  php56-php-soap.x86_64 5.6.28-1.fc25.remi               php56-php-tidy.x86_64 5.6.28-1.fc25.remi             
  php56-php-xml.x86_64 5.6.28-1.fc25.remi                   php56-php-xmlrpc.x86_64 5.6.28-1.fc25.remi             php56-runtime.x86_64 2.1-5.fc25.remi        

poderemos efetuar a instalação de outros módulos com o comando

dnf --enablerepo=remi install php56-php-svn 

Os pacotes instalados estão presentes em /opt/remi/php56
Conferindo Instalação

Para Conferir a Instalação basta executar

php56 -v

Com output

PHP 5.6.28 (cli) (built: Nov  9 2016 06:26:30) 
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

Conferindo php-fpm

systemctl status php56-php-fpm

Com output

Main PID: 22349 (php-fpm)
   Status: "Ready to handle connections"
    Tasks: 6 (limit: 4915)
   CGroup: /system.slice/php56-php-fpm.service
           ├─22349 php-fpm: master process (/opt/remi/php56/root/etc/php-fpm.conf)
           ├─22350 php-fpm: pool www
           ├─22351 php-fpm: pool www
           ├─22352 php-fpm: pool www
           ├─22353 php-fpm: pool www
           └─22354 php-fpm: pool www

Jan 07 19:17:06 caramelo systemd[1]: Starting The PHP FastCGI Process Manager...
Jan 07 19:17:06 caramelo systemd[1]: Started The PHP FastCGI Process Manager.

Criando link simbólico

systemctl enable php56-php-fpm

Com output

Created symlink /etc/systemd/system/multi-user.target.wants/php56-php-fpm.service → /usr/lib/systemd/system/php56-php-fpm.service.

Configurando serviço php-fpm

Alterar o arquivo

/opt/remi/php56/root/etc/php-fpm.d/www.conf

Alterar parametro de ip listen

listen.allowed_clients = 127.0.0.1

Para

listen.allowed_clients = 127.0.0.56

E adicionar o parametro include_path

php_value[include_path]=".:/opt/remi/php56/root/usr/share/pear:/opt/remi/php56/root/usr/share/php:/usr/share/pear:/usr/share/php"

Iremos também configurar os servidores Apache e Nginx para  aceitar este recurso no post:
Configurando Nginx e Apache para diversas versões do PHP

É isso aí espero ter sido claro na explicação. Valeu e até a próxima!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *