Il existe plusieurs raisons pour lesquelles vous souhaitez utiliser plusieurs versions de PHP avec Nginx sur votre serveur. Si vous avez deux applications, une application qui s'exécute sur PHP 7.0 et une seconde application qui s'exécute sur PHP 7.2, vous devez alors utiliser plusieurs versions de PHP sur votre serveur. Vous pouvez également utiliser un serveur séparé pour chaque version de PHP, mais cela augmentera votre coût d'hébergement. L'installation de plusieurs versions de PHP avec Nginx est le meilleur choix pour réduire les coûts d'hébergement.
Dans ce didacticiel, nous allons installer plusieurs versions de PHP et configurer Nginx pour qu'il fonctionne avec les deux versions de PHP.
Prérequis
- Un nouveau serveur VPS Ubuntu 18.04 sur Atlantic.Net Cloud avec au moins 2 Go de RAM.
- Deux noms de domaine valides pointant vers votre adresse IP VPS. Dans ce didacticiel, nous utiliserons site1.example.com et site2.example.com.
Note :Vous pouvez vous référer au Atlantic DNS Guide pour gérer les enregistrements DNS.
Étape 1 - Créer un serveur cloud Atlantic.Net
Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur, en choisissant Ubuntu 18.04 comme système d'exploitation, avec au moins 2 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.
Une fois que vous êtes connecté à votre serveur Ubuntu 18.04, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.
apt-get update -y
Étape 2 – Installer Nginx et MariaDB
Tout d'abord, vous devrez installer le serveur Web Nginx sur votre serveur. Vous pouvez installer Nginx en exécutant simplement la commande suivante :
apt-get install nginx mariadb-server -y
Une fois installés, démarrez les serveurs Nginx et MariaDB et autorisez-les à démarrer après le redémarrage du système avec la commande suivante :
systemctl démarrer nginxsystemctl démarrer mariadbsystemctl activer nginxsystemctl activer mariadb
Étape 3 - Installer PHP 7.0 et PHP 7.2 avec PHP-FPM
Tout d'abord, vous devrez ajouter un référentiel PHP à votre serveur pour installer plusieurs versions de PHP. Vous pouvez ajouter le référentiel PHP Ondrej avec la commande suivante :
apt-get install software-properties-common -yadd-apt-repository ppa:ondrej/php
Ensuite, mettez à jour le référentiel avec la commande suivante :
apt-get update -y
Une fois le dépôt à jour, installez PHP 7.0, PHP 7.2 et PHP-FPM avec la commande suivante :
apt-get install php7.0 php7.0-fpm php7.2 php7.2-fpm -y
Une fois l'installation terminée, vérifiez l'état de PHP-FPM avec la commande suivante :
statut systemctl php7.0-fpmstatut systemctl php7.2-fpm
Étape 4 – Créer un site Web1 et un site Web2
Ensuite, créez un répertoire racine de document pour Website1 et Website2 avec la commande suivante :
mkdir /var/www/html/site1.example.commkdir /var/www/html/site2.example.com
Créez ensuite un exemple de fichier index.php pour le site Web site1.example.com :
nano /var/www/html/site1.example.com/index.php
Ajoutez les lignes suivantes :
Enregistrez et fermez le fichier. Ensuite, créez un fichier index.php pour site2.example.com :
nano /var/www/html/site2.example.com/index.php
Ajoutez les lignes suivantes :
Enregistrez et fermez le fichier. Ensuite, changez la propriété des deux sites Web en www-data :
chown -R www-data:www-data /var/www/html/site1.example.comchown -R www-data:www-data /var/www/html/site2.example.com
Étape 5 - Configurer Nginx
Ensuite, vous devrez créer un fichier d'hôte virtuel Nginx pour le domaine site1.linuxbuz.com qui utilise PHP 7.0.
Vous pouvez le faire avec la commande suivante :
nano /etc/nginx/sites-available/site1.example.com.conf
Ajoutez les lignes suivantes :
serveur { écoute 80 ;
racine /var/www/html/site1.example.com/ ; index index.php;
nom_serveur site1.exemple.com ;
emplacement / { try_files $uri $uri/ =404; } emplacement~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php/php7.0-fpm.sock ; fastcgi_index index.php ; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; inclure fastcgi_params ; }}Enregistrez et fermez le fichier.
Ensuite, créez un fichier d'hôte virtuel Nginx pour le domaine site2.example.com qui utilise PHP 7.2.
nano /etc/nginx/sites-available/site2.example.com.confAjoutez les lignes suivantes :
serveur { écoute 80 ; racine /var/www/html/site2.example.com/ ; index index.php; nom_serveur site2.exemple.com ; emplacement / { try_files $uri $uri/ =404; } emplacement ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock ; fastcgi_index index.php ; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; inclure fastcgi_params ; }}Enregistrez et fermez le fichier. Ensuite, activez les deux fichiers d'hôte virtuel avec la commande suivante :
ln -s /etc/nginx/sites-available/site1.example.com.conf /etc/nginx/sites-enabled/ln -s /etc/nginx/sites-available/site2.example.com.conf /etc/nginx/sites-enabled/Enfin, redémarrez Nginx et le service PHP-FPM pour appliquer toutes les modifications de configuration :
systemctl redémarrer nginxsystemctl redémarrer php7.0-fpmsystemctl redémarrer php7.2-fpmÉtape 6 - Testez les deux sites Web
Les deux sites Web sont maintenant installés et configurés pour fonctionner avec plusieurs versions de PHP.
Maintenant, ouvrez votre navigateur Web et tapez l'URL http://site1.example.com. Vous obtiendrez la page suivante qui indique que votre site Web1 fonctionne avec PHP 7.0.
Ensuite, ouvrez votre navigateur Web et saisissez l'URL http://site2.example.com. Vous obtiendrez la page suivante qui indique que votre site Web2 fonctionne avec PHP 7.2.
C'est tout pour le moment.
Conclusion
Dans l'article ci-dessus, vous avez appris à héberger plusieurs sites Web avec différentes versions de PHP sur Ubuntu 18.04. Vous devriez maintenant avoir suffisamment de connaissances pour utiliser différentes versions de PHP avec différentes applications. Si vous êtes prêt à démarrer avec un serveur privé virtuel pour l'hébergement de vos sites Web, visitez la page d'hébergement VPS d'Atlantic.Net pour trouver un forfait d'hébergement qui vous convient.