web-dev-qa-db-fra.com

Faire fonctionner XAMPP avec plusieurs versions de PHP

Comment puis-je installer XAMPP pour fonctionner avec différentes versions de PHP?

J'utilise XAMPP car certains scripts sont buggés lorsqu'ils sont exécutés dans WAMP. J'utilise WAMP car il supporte différentes versions de PHP.

Mais maintenant, je voudrais le simplifier pour qu’il soit simplement XAMPP afin que mon développement Web soit plus facile à gérer.

Est-il possible de configurer XAMPP pour fonctionner avec plus d'une version de PHP? Ou est-ce quelque chose que je dois rechercher dans une solution alternative?

Remarque: je suis sous Windows 7.

17
Pennf0lio

S'il vous plaît noter
Cette réponse n’est pas valable pour la nouvelle version de XAMPP.


Tout d'abord, vous devrez arrêter Apache de XAMPP . Ensuite,

Allez-y cmd et passez dans votre dossier XAMPP. Par exemple, si votre dossier XAMPP est dans C: \

C:\>cd C:\XAMPP 

Dans ce dossier se trouve un fichier nommé php-switch.bat, exécuté à partir de la ligne de commande. Sinon, vous pouvez aussi exécuter php-switch.bat directement.

Vous verrez la version actuelle et la procédure à suivre. Par exemple, tapez 4 pour passer PHP 4 puis suivez la procédure.

php-switch.bat running in the terminal

PHP 4 s’installera dans votre répertoire XAMPP\PHP et basculera avec succès. puis réactivez Apache.

7
Ye Lin Aung

La meilleure méthode consiste à modifier les paramètres PHP dans

/Apache/conf/extra/httpd-xampp.conf

pour refléter la nouvelle version de PHP que vous souhaitez utiliser

Dans mon cas, j'ai décompressé PHP5.4 en C:\XAMPPLITE\PHP5.4, puis mis à jour les lignes de clé de ce fichier, telles que:

SetEnv PHPRC "C:\\xampplite\\php5.4"

LoadFile "C:/xampplite/php5.4/php5ts.dll"

PHPINIDir "C:/xampplite/php5.4"

Vous devez également vous assurer que la version correcte de php5Apache2_2.dll est installée.

Pour m'en assurer, j'ai copié la nouvelle version de php5Apache2_2.dll dans le répertoire des modules Apache avec un nom unique, puis modifié la configuration pour qu'elle corresponde à celle-ci:

copy php5.4\php5Apache2_2.dll Apache\modules\php5Apache2_2-5_4.dll

et dans le fichier httpd-xampp.conf

LoadModule php5_module modules/php5Apache2_2-5_4.dll
4
Judder

Si vous voulez cette fonctionnalité (signification, possibilité de mélanger et faire correspondre les versions de composants Apache, mysql et php) et préférez les applications empilées AMP Stack 3ème partie, vous pouvez regarder WAMPServer 2.0 comme une option pour Windows ... L'option AMP fournie que j'ai consultée (pour Windows, Mac et Linux) n'autorise pas la permutation des générations de composants (les commutateurs PHP4 et PHP5 ne sont pas inclus dans la construction des composants, car ils n'étaient proposés qu'en raison du code hérité. jusqu’à ce que PHP5 devienne plus compatible avec les versions antérieures et que PHP4 soit moins abondant).

La plupart des applications AMP Stack groupées avec des tiers, en particulier les versions de système d’exploitation sous Unix (Mac et Linux), afin d’avoir les composants de pile dans la même structure de répertoires que le répertoire racine "app", ils doivent compiler chaque composant avec des directives et des instructions spécifiques. des arguments qui en fin de compte connectent certaines des références de dossiers et des signatures binaires à chaque composant construit par eux-mêmes ... spécifiquement les composants mysql et php car ils ont des objets de bibliothèque qui sont à la fois partagés et doivent être spécifiquement référencés et inclus lors de la compilation de la source ... (et il me semble que la plupart ne compile pas pour une raison quelconque, mais uniquement avec chaque directive optionnelle et bibliothèque incluse ... pas sûr que cela résoudrait le problème ou non, car je suis arrivé jusque-là avec mon projet de répondre à cela pour l'instant).

Une autre remarque, car elle se situe dans le même contexte .... en ce qui concerne les commentaires sur l’utilisation des composants des installations autonomes par rapport aux piles _AMPP, je ne sais malheureusement que ce que j’ai écrit ci-dessus car j’ai essayé de configurer à l’aide des 3 autonomes. composants du code source et essayé d’avoir mon gâteau et de le manger à .... bien que je n’aie jamais eu d’expérience avec l’un d’eux auparavant ... donc je peux dire qu’il ya 2 raisons très convaincantes pour lesquelles les développeurs font et devrait utiliser les piles pour les environnements de développement locaux:

1) Si votre projet utilise cette technologie mais n'extensionne pas explicitement la fonction dans le cœur d'un composant, la plupart souhaitent simplement être opérationnels afin de pouvoir travailler sur ce dont ils ont besoin ... et ne pas avoir pour comprendre toutes les configurations nécessaires pour que les 3 composants puissent se parler de manière transparente. On pourrait facilement lutter pendant des jours pour savoir quelles directives, modules, bibliothèques, arguments de compilation, etc. sont nécessaires. Si vous le connaissez déjà, c'est bien, mais ne le recommandez pas à quelqu'un qui ne le sait pas, sauf si vous allez le faire pour eux.

2) les piles fournies sont autonomes et isolées des fichiers de configuration du système d’exploitation. Vous pouvez donc supprimer votre environnement de développement sans conséquences graves. Si vous voulez exécuter des scripts qui déploient des fichiers dans le dossier "etc" nécessaire, je ne le fais pas. Je sais quelque chose de vous, mais je peux faire une erreur de temps en temps et une erreur sur le dossier ../XAMPP/etc est beaucoup moins pénible qu’une erreur sur le dossier/etc.

3) GUI ... GUI ... GUI ... tout le monde n'est pas une ligne de commande Mozart et les piles AMPP fournissent toutes une interface graphique agréable permettant d'activer et de désactiver les éléments qui vous intéressent. Si vous voulez une interface graphique, vous vous dirigerez vers les applications de la pile AMPP ... Si vous n’y prêtez pas attention, tout dépend du poids ou du stock que vous avez mis sur mes points n ° 1 et n ° 2.

Quoi qu'il en soit, désolé pour la thèse "Comment faire bailler quelqu'un", j'espère que quelqu'un en tirera quelque chose.

1
Eric Galuskin

Si vos scripts sont bogués, ils le resteront quel que soit le package de serveur que vous basculez. Si le problème provient de la configuration de votre serveur, creusez-le et réglez-le.

La vraie solution hardcore serait d’installer et de gérer les composants du serveur (et leurs configurations) manuellement. Depuis que je suis passé de WAMP à l’installation de serveurs auto-administrés, je n’ai plus ressenti le besoin de solutions de serveurs préemballés.

1
U-D13

XAMPP est maintenant compilé avec plusieurs versions de PHP. Vous choisissez.

https://www.apachefriends.org/download.html

0
Shai