Développement PHP4 et PHP5 sur Ubuntu avec XAMPP
Par NiKo le lundi 5 juin 2006, 22:35 - Ubuntu
- Lien permanent -
13 commentaires -
Tags :
Pour ceux qui comme moi passent constamment de projets PHP4 à PHP5, la gestion des environnements de développement par paquets n'est pas toujours aisée - même si cela reste possible aux prix de manipulations récurrentes et parfois compliquées.
XAMPP est un système LAMPP autonome - donc indépendant du système de gestion de paquets - contenant tout ce qu'il faut pour travailler directement dans un environnement de développement comprenant entre autres Apache 2.2.2, MySQL 5.0.21, PHP 5.1.4 & 4.4.2 & PEAR + SQLite 2.8.17/3.2.8, Perl 5.8.7, ProFTPD 1.3.0, phpMyAdmin 2.8.1 et beaucoup d'autres choses encore. Quelques captures d'écran vous convaincront peut-être plus efficacement...
Ainsi vous pouvez disposer d'un environnement de développement isolé, dédié à un projet particulier ou switcher de version PHP très facilement au moyen d'une simple ligne de commande :
$ sudo lampp php4
Ou bien :
$ sudo lampp php5
Pour installer la version 1.5.3 de XAMPP sur votre Ubuntu, voici la démarche à suivre :
$ sudo-s # cd /opt # wget http://puzzle.dl.sourceforge.net/sourceforge/xampp/xampp-linux-1.5.3a.tar.gz # tar xvzf xampp-linux-1.5.3a.tar.gz && rm xampp-linux-1.5.3a.tar.gz # ln -s lampp/lampp /usr/bin/lampp
Il est sage de configurer MySQL proprement et de façon sûre, après s'être assuré que le service natif ne fonctionne pas [1] :
# /etc/init.d/mysql stop # /opt/lampp/bin/mysql_secure_installation
Si vous travaillez aussi avec les versions officiellement distribuées par Ubuntu d'apache et de mysql, il peut être utile de disposer de raccourcis permettant de passer de XAMPP aux versions natives et inversement ; personnellement, cela tient dans ces quelques alias bash :
alias startubuntuwebserver='sudo lampp stop && sudo apache2ctl start && /etc/init.d/mysql start' alias stopubuntuwebserver='sudo apache2ctl stop && /etc/init.d/mysql stop' alias startxampp4='stopwebserver && sudo lampp php4' alias startxampp5='stopwebserver && sudo lampp php5'
Ainsi pour lancer XAMPP, par exemple en PHP5 :
$ startxampp5
Et pour relancer les services originaux :
$ startubuntuwebserver
Notez enfin qu'il existe également des commandes avancées pour le démarrage et l'arrêt des services XAMPP.
Notes
[1] Si ce dernier est installé, bien entendu.










13 commentaires (Ajouter un commentaire)
Il existe une autre méthode pour passer facilement de php4 à php5 et que j'utilise tous les jours, c'est une méthode qui consiste à utiliser suphp et php4 et php5 en version cgi. avec un simple .htaccess, on peut alors switcher toute une arborescence entre php4&5, c'est une méthode que j'aprécie.
Vous trouverez facilement la page sur le lien vers mon site web, je ne met pas de lien direct, je ne voudrais pas qu'on m'accuse de pub, d'autant que je ne cherche pas particulièrement à faire connaitre cet article
Nico, lecteur jusqu'alors anonyme
La méthode du "je change la version d ePHP employée pour tout le serveur", ça me dérange un peu, car ce n'est pas très applicable sur un serveur de production, où il est souvent plus pertinent de pouvoir régler une bonne fois pour toute la version de PHP employée par chaque Virtualhost ou chaque dossier. Et pour ça, http://turnipspatch.com/running-php4-and-php5-on-a-single-web-server/ donne une solution assez simple, même si au final php4 et php5 tournent en cgi.
ps : tu as bu une cafetière NiKo ? Ou mangé un des petits pots Bledina de Yann ? Quel rythme de publication !

j'ai eu un besoin un peu similaire mais sur un serveur de développement partagé par plusieurs personnes, donc le sudo lampp phpX est exclu. j'ai opté pour un localhost en php4 et un localhost:85 en php5. Ca permet surtout de préparer des migrations, les mêmes scripts étant interprètés par les 2 versions.
Si tu veux y jeter un oeil... tutoriel
On peut aussi faire un phpx en module et phpy en cgi, pas forcément les 2 en cgi :
cf : http://www.destination-linux.org/Installer-PHP4-et-PHP5-sur-une-meme-instance-d-Apache
Après en termes de perf, je sais pas ce qui est le mieux cgi+module ou 2 cgi...
Euh.. si tu arrêtes mysql.. tu peux pas executer mysql_secure_installation (puisque celui-ci a besoin que mysql soit lancé pour y accéder) non ? ^^
Sinon, le coup du
ln -smarche pas chez moi.. dommageC'est vrai que tu as un rythme de publication phénoménal là.. je suis plus
alors ça ça tombe rudement bien parce que je me mets au PHP5 mais pas mon hébergeur... du coup je me prends un peu la tête question compatibilité local/serveur... merci NiKo
Vincent> En l'occurence j'arrête le service MySQL du système, pas celui de XAMPP
Marie> You're welcome
le "ln -s" ne fonctionne pas puisqu'il est dans le mauvais sens
super, je viens de passer près de 2h à installer Apache/Php5, j'avais oublié ce post que je m'étais jurée de mettre en application

ça m'apprendra à venir consulter ton blog APRES
c'est mettable en application après coup ou faut que je recommence ?
Marie> C'est possible, il suffit de stopper tes services actuels et de démarrer ceux de Xampp
Tu peux meme rajouter "Rails" dans ton titre
Il existe un package tres simple a installer http://rubyforge.org/projects/rorox/
Ensuite, rajouter la ligne
pour chaque environnement dans le fichier config/database.yml de l'application rails suivit d'un petit
Effectivement, c'est une excellente initiative, ça !
La discussion continue ailleurs
Au fil du web
Cette semaine j'ai installé XAMPP que j'ai découvert via prendreuncafé.com. J'ai installé ubunutu pour faire des tests sur une machine distante, Firestarter, vino et ssh étaient de la partie... Merci freetux pour la doc.