Como instalar a versão PHP múltipla com o Apache no Debian 11/10

Como instalar a versão PHP múltipla com o Apache no Debian 11/10

Geralmente, o gerente host usa o sistema 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. Pode ser alguns dos administradores do sistema não estão cientes disso. Este tutorial ajudará você a instalar vários sistemas PHP com Apache no Debian 11, Debian 10 e Debian 9 Systems 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.

Instalação PHP

Para a instalação das versões PHP, usamos o PPA mantido aqui. Use os dois comandos abaixo para adicionar o PPA no seu sistema Debian.

sudo apt install ca-certificados capt-transport-https wget -q https: // pacotes.Sury.org/php/apt.gpg -o- | sudo apt -key add - echo "Deb https: // pacotes.Sury.org/php/alongamento principal "| sudo tee/etc/apt/fontes.lista.d/php.lista 

Este tutorial usa o Php 5.6 e Php 7.2 Para configurar com o Apache Web Server. Para usar as múltiplas versões PHP, usaremos o PHP FPM e o FastCGI. Execute os seguintes comandos para instalar PHP e FPM no sistema Debian.

APT UPDATE SUDO APT INSTAL.6 Php5.6-fpm sudo apt install php7.2 Php7.2-fpm 

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.2-fpm 

Instalação do Apache

Instale o Apache Web Server no repositório oficial. Inicie o terminal em seu sistema ou login com sistemas SSH para sistemas remotos. 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 

Configuração do Apache

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 

Agora crie dois diretórios sepratos em seu sistema para ambos os sites configurando em seu sistema.

sudo mkdir/var/www/php56 sudo mkdir/var/www/php72 

Agora, crie e index.PHP contendo a função phpinfo (). Isso ajudará os usuários a visualizar e confirmar, qual versão PHP é usada pelo VirtualHost.

eco "">/var/www/php56/index.php echo "">/var/www/php72/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 opções de documentroot/var/www/php56 -Indexes +sigasymlinks +multiviews allowoverride requerem 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 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/php72.exemplo.com.conf 

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

ServerName Php72.exemplo.com opções com documentroot/var/www/php72 -Indexes +segue -se os links +Multiviews allowoverRide requer todos os sethendler concedidos "proxy: unix: var/run/php/php7.2-fpm.meia | fcgi: // localhost/"
123456789101112 ServerName Php72.exemplo.com documentroot/var/www/php72 Opções -Indexes +SigasymLinks +Multiviews allowoverRide requer todos os concedidos Sethandler "proxy: unix:/var/run/php/php7.2-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 php72.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.

Configuração de teste

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 Php72.exemplo.com está mostrando o Php 7.2 como a configuração.