Como instalar a versão PHP múltipla com o Apache no Ubuntu 20.04

Como instalar a versão PHP múltipla com o Apache no Ubuntu 20.04

Geralmente, o gerente host usou um servidor separado para cada implantação de aplicativos de versão php. O que aumenta o custo de hospedagem. Alguns dos gerentes host estão usando o Docker para executar várias versões PHP no servidor único. Além disso, a maioria de vocês está ciente da configuração, usei neste tutorial. Mas alguns dos administradores do sistema não estão cientes disso. Este tutorial ajudará você a instalar várias versão PHP com o Apache no Ubuntu 20.04 Sistema Linux sem alternar versões PHP.

Este tutorial descreve a instalação e configuração de dois virtuais no Apache com versões PHP separadas. O primeiro virtualhost funcionará com o Php 5.6 e outro virtualhost será executado com o Php 7.2. Então, basta passar por este tutorial. Você também pode usar mais de duas versões PHP com o Apache, conforme necessário, mas este tutorial cobre apenas dois.

Instalando o Apache

Os pacotes de servidores da Web Apache estão disponíveis nos repositórios padrão. Abra um terminal no seu sistema Ubuntu e execute os seguintes comandos para instalar a versão mais recente do Apache Web Server.

sudo apt update sudo apt install apache2 libapache2-mod-fcgid 

Instalando o PHP

Um PPA é mantido para instalação de PHP em sistemas Ubuntu de longos anos. Você só precisa adicionar esse PPA ao seu sistema para instalar pacotes. Use os dois comandos abaixo para adicionar o PPA ao seu sistema.

sudo apt install install-properties-common sudo add-aprop-repository ppa: ondrej/php 

Para este tutorial, estamos usando o Php 5.6 e Php 7.4 Para configurar com o Apache Web Server. Para usar as múltiplas versões PHP, usaremos o PHP FPM e o FastCGI. Vamos instalar os seguintes pacotes em seu sistema.

sudo apt update -y sudo apt install php5.6 Php5.6 -fpm -y sudo apt install php7.4 Php7.4 -fpm -y 

Após a instalação, os serviços PHP-FPM serão iniciados automaticamente. Use os seguintes comandos para garantir que os dois serviços estejam em execução.

status sudo systemctl php5.6-FPM SUDO SYSTEMCTL STATUS PHP7.4-fpm 
  • Recomendado: Como ativar/desativar os módulos de PHP no Ubuntu

Configure o apache com múltiplo PHP

Agora ative alguns módulos necessários para a configuração de várias versões PHP com Apache. Esses módulos são necessários para integrar o PHP FPM e o FastCGI com o Apache Server.

sudo a2enmod ações fcgid alias proxy_fcgi 

Prepare -se para a configuração de sites em seu servidor Apache. Para fins de teste, estou configurando dois sites para trabalhar com duas versões diferentes de 2 PHP. Primeiro, crie dois diretórios em seu servidor.

sudo mkdir/var/www/php56-app sudo mkdir/var/www/php74-app 

Agora, crie e index.PHP contendo o phpinfo (); função.

eco "">/var/www/php56-app/index.php eco "">/var/www/php74-app/index.php 

Vamos começar a criação do VirtualHost. Apache mantém todos os arquivos de configuração do VirtualHost em/etc/apache2/sites disponíveis com a extensão .conf. Crie um arquivo para o primeiro host virtual e edite em seu editor de texto favorito.

sudo vim/etc/apache2/sites-averlable/php56.exemplo.com.conf 

Adicione o seguinte conteúdo. Certifique -se de usar o nome do servidor correto e o caminho do diretório de acordo com sua configuração. Este site está configurado para trabalhar com Php 5.6.

ServerName Php56.exemplo.COM Documentroot/var/www/php56 -app options -indexes +sigasymlinks +multiviews allowoverride requer todos os # apache 2.4.10+ podem proxy para soquete unix sethandler "proxy: unix:/var/run/php/php5.6-fpm.Meia | fcgi: // localhost "
12345678910111213 ServerName Php56.exemplo.com documentroot/var/www/php56-app Opções -Indexes +SigasymLinks +Multiviews allowoverRide requer todos os concedidos # Apache 2.4.10+ podem proxy para soquete unix sethandler "proxy: unix:/var/run/php/php5.6-fpm.Meia | fcgi: // localhost "

Da mesma forma, crie um segundo arquivo de configuração do VirtualHost para trabalhar com o PHP 7.2. Editar arquivo de configuração no editor de texto:

sudo vim/etc/apache2/sites-averable/php74.exemplo.com.conf 

Adicione o seguinte conteúdo ao arquivo com o nome do servidor e documentroot adequado.

ServerName Php72.exemplo.com opções de documentroot/var/www/php74 -app -indexes +sigasymlinks +multiviews allowoverride requer todos os sethendler concedidos "proxy: unix:/var/run/php/php7.4-fpm.Meia | fcgi: // localhost "
123456789101112 ServerName Php72.exemplo.com documentroot/var/www/php74-App Opções -Indexes +SigasymLinks +Multiviews allowoverRide requer todos os concedidos Sethandler "proxy: unix:/var/run/php/php7.4-fpm.Meia | fcgi: // localhost "

Vocês dois sites estão configurados agora. Mas eles ainda não estão ativos. Apache mantém sites ativos sob/etc/apache2/sites habilitados para diretório. Você pode simplesmente criar um link simbólico de arquivos de configuração para este diretório ou usar o comando abaixo para fazer o mesmo.

sudo a2ensite php56.exemplo.com sudo a2ensite php74.exemplo.com 

Depois de fazer todas as alterações reiniciar o Apache para recarregar novas mudanças de configurações.

sudo systemctl reiniciar apache2 

Sua configuração foi concluída agora. Vá para o próximo passo para testar sua configuração.

Teste sua configuração

Editar /etc /hosts arquivo no sistema local e fazer uma entrada como abaixo. Isso resolverá nomes temporários para o endereço IP de localhost.

sudo vim /etc /hosts 

Adicione a entrada seguinte ao final do arquivo

127.0.0.1 Php74.exemplo.com 127.0.0.1 Php56.exemplo.com 

Abra um navegador da web e visite os dois sites. Você vai ver isso Php56.exemplo.com mostra a versão Php 5.6 e Php74.exemplo.com está mostrando o Php 7.4 como a configuração.

http: // php74.exemplo.com:

http: // php56.exemplo.com:

Conclusão

Este tutorial ajuda você a configurar vários sites com a versão PHP DIFFER-2 no Single Apache Server em um Ubuntu 20.04 Sistema.