Pourquoi basculer entre les versions de PHP lorsque vous pouvez utiliser plusieurs versions de PHP en même temps avec une seule installation xampp ? Avec une seule installation xampp, vous avez 2 options:
Exécutez une ancienne version de PHP uniquement pour le répertoire de votre ancien projet:
cela servira la plupart du temps, vous pouvez avoir un ou deux anciens projets que vous avez l'intention d'exécuter avec une ancienne version de PHP. Configurez simplement xampp pour exécuter une ancienne version de PHP uniquement pour ces répertoires de projet.
Exécutez une ancienne version de PHP sur un port distinct de xampp: Parfois, vous pouvez mettre à niveau un ancien projet vers la dernière version de PHP lorsque vous devez exécuter le même projet sur une nouvelle et une ancienne version de PHP dans les deux sens. Ensuite, vous pouvez définir une ancienne version de PHP sur un port différent (disons 8056), donc lorsque vous allez sur http://localhost/any_project/
xampp, lancez PHP 7 et lorsque vous accédez à http://localhost:8056/any_project/
xampp, lancez PHP 5.6.
Exécutez une ancienne version de PHP sur un hôte virtuel: vous pouvez créer un hôte virtuel comme localhost56 pour exécuter PHP 5.6 tandis que vous pouvez utiliser PHP 7 sur localhost.
Permet de le configurer.
Étape 1: Téléchargez PHP
Donc, vous avez PHP 7 sous xampp, vous voulez y ajouter une ancienne version de PHP, disons PHP 5.6. Téléchargez la version nts (Non Thread Safe) de l'archive zip PHP à partir de php.net (voir l' archive pour les anciennes versions) et extrayez les fichiers sous c:\xampp\php56
. La version thread-safe n'inclut pas php-cgi.exe.
Étape 2: Configurerphp.ini
Ouvrez le c:\xampp\php56\php.ini
fichier dans le bloc-notes. Si le fichier n'existe pas, copiez- php.ini-development
le php.ini
et ouvrez-le dans le bloc-notes. Décommentez ensuite la ligne suivante:
extension_dir = "ext"
Étape 3: Configurer Apache
Ouvrez le panneau de configuration de xampp, cliquez sur le bouton de configuration pour apache, puis cliquez sur Apache (httpd-xampp.conf)
. Un fichier texte s'ouvre et place les paramètres suivants au bas du fichier:
ScriptAlias /php56 "C:/xampp/php56"
Action application/x-httpd-php56-cgi /php56/php-cgi.exe
<Directory "C:/xampp/php56">
AllowOverride None
Options None
Require all denied
<Files "php-cgi.exe">
Require all granted
</Files>
</Directory>
Remarque: vous pouvez ajouter d'autres versions de PHP à votre installation xampp en suivant les étapes 1 à 3 si vous le souhaitez.
Étape 4 (option 1): [Ajouter des répertoires pour exécuter une version PHP spécifique]
Vous pouvez maintenant définir des répertoires qui fonctionneront avec PHP 5.6. Ajoutez simplement ce qui suit au bas du fichier de configuration pour définir les répertoires.
<Directory "C:\xampp\htdocs\my_old_project1">
<FilesMatch "\.php$">
SetHandler application/x-httpd-php56-cgi
</FilesMatch>
</Directory>
<Directory "C:\xampp\htdocs\my_old_project2">
<FilesMatch "\.php$">
SetHandler application/x-httpd-php56-cgi
</FilesMatch>
</Directory>
Étape 4 (option 2): [Exécutez l'ancienne version de PHP sur un port séparé]
Maintenant, pour définir PHP v5.6 sur le port 8056, ajoutez le code suivant au bas du fichier de configuration.
Listen 8056
<VirtualHost *:8056>
<FilesMatch "\.php$">
SetHandler application/x-httpd-php56-cgi
</FilesMatch>
</VirtualHost>
Étape 4 (option 3): [Exécuter une ancienne version de PHP sur un hôte virtuel]
Pour créer un hôte virtuel (localhost56) sur un répertoire (htdocs56) pour utiliser PHP v5.6 sur http: // localhost56 , créez le répertoire htdocs56 à l'emplacement souhaité et ajoutez localhost56 à votre fichier hosts ( voir comment ), puis ajoutez le code suivant au bas du fichier httpd-xampp.conf.
<VirtualHost localhost56:80>
DocumentRoot "C:\xampp\htdocs56"
ServerName localhost56
<Directory "C:\xampp\htdocs56">
Require all granted
</Directory>
<FilesMatch "\.php$">
SetHandler application/x-httpd-php56-cgi
</FilesMatch>
</VirtualHost>
Terminer: enregistrer et redémarrer Apache
Enregistrez et fermez le fichier de configuration, redémarrez apache à partir du panneau de configuration xampp. Si vous avez opté pour l'option 2, vous pouvez voir le port supplémentaire (8056) répertorié dans votre panneau de configuration xampp.
Mise à jour pour l'erreur: en-
tête mal formé du script 'php-cgi.exe': en-tête incorrect
Si vous rencontrez l'erreur ci-dessus, ouvrez à httpd-xampp.conf
nouveau et commentez la ligne suivante avec un # (caractère dièse).
SetEnv PHPRC "\\path\\to\\xampp\\php"