Puoi eseguire più versioni php su Ubuntu senza alcun problema. Sono necessarie più versioni php se le applicazioni sono costruite in diverse versioni php come php 7.1 e php 7.2. Qui installeremo PHP7.0, PHP7.1, PHP7.2 e PHP7.3 sul server.
- In primo luogo, aggiungeremo PPA, utilizzando il comando seguente.# sudo apt install software-properties-common # sudo add-apt-repository ppa:ondrej/php 
- Esegui il comando di aggiornamento. # sudo apt update 
- Installa PHP 7.2 con il comando seguente. # sudo apt install php7.2 php7.2-fpm 
- Installa le estensioni php usando i comandi seguenti.# sudo apt install php7.2-mysql php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl 
- Ora, installa PHP 7.1 usando il comando seguente. # sudo apt install php7.1 php7.1-fpm 
- Installa le estensioni PHP7.1 comuni.# sudo apt install php7.1-mysql php7.1-mbstring php7.1-xml php7.1-gd php7.1-curl 
Puoi installare php 7.0 poiché abbiamo installato php 7.1 e 7.2
- Installa Nginx con il comando seguente. # sudo apt install nginx 
- Crea 2 cartelle per testare il sito web con PHP 7.1 e PHP 7.2echo "<?php phpinfo();?>" > /var/www/php72/index.php echo "<?php phpinfo();?>" > /var/www/php71/index.php 
- Creeremo blocchi di server per entrambi i siti Web su Nginx. # sudo nano /etc/nginx/sites-available/php71.example.com 
Inserisci il seguente contenuto per il sito con PHP 7.1
# Application with PHP 7.1
#
server {
	listen 80;
	root /var/www/php71;
	index index.php;
	server_name php71.test.com;
	location ~* \.php$ {
		# With php-fpm unix sockets
		fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
		include         fastcgi_params;
		fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;
		fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;
	}
} - Ora, crea un secondo file di configurazione di VirtualHost per lavorare con PHP 7.2. # sudo nano /etc/nginx/sites-available/php72.example.com # Application with PHP 7.2 # server { listen 80; root /var/www/php72; index index.php; server_name php72.test.com; location ~* \.php$ { # With php-fpm unix sockets fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; } }
- Crea un collegamento simbolico per entrambi i file di configurazione che si trovano nella directory /etc/nginx/sites-enabled.# sudo ln -s /etc/nginx/sites-available/php71.example.com /etc/nginx/sites-enabled/ # sudo ln -s /etc/nginx/sites-available/php72.example.com /etc/nginx/sites-enabled/ 
- Riavviamo Nginx.# sudo systemctl restart nginx.service 
- Puoi accedere a entrambi i siti Web nel browser e vedrai le diverse versioni per ciascuno.