Cet article décrit comment réaliser simplement un serveur web de type Apache/PHP/MySQL sous Windows dans le but de développer des applications web. Attention, il ne s’agit pas ici de mettre en production un « gros » serveur Internet.
Nota: Ce document a été effectué avec EasyPHP 1.8 sur une plate-forme Windows 98 standard. L’excellent gestionnaire de contenu WikiNi a été utilisé pour les besoins de la démonstration
1 – EasyPHP: installation
1.1 – Présentation
EasyPHP, comme son nom l’indique, est un logiciel permettant de mettre en place simplement un serveur capable d’interpréter des fichiers PHP et, comme son nom ne l’indique pas, est maintenu par une équipe française. Ce logiciel est en fait une compilation de plusieurs outils célèbres qu’il installe d’une seule traite et dont il facilite la maintenance.
Les outils fournis sont les suivants:
- Le serveur web Apache
- Le gestionnaire de base de données MySQL
- Le module PHP
- L’interface de gestion web PHPMyAdmin
Attention ce logiciel, bien qu’il intègre des outils professionnels, n’est nullement un serveur de production! Son seul but est de vous permettre d’installer très simplement un serveur Web PHP/MySQL sur votre ordinateur dans le but de faire un peu de développement web. Tel qu’il est fourni, il n’est pas suffisamment sécurisé et optimisé pour être mis en production.
1.2 – Récupération et intallation
Afin d’installer EasyPHP, nous commencerons par récupérer son installateur sur le site officiel. Une fois téléchargé, l’installation se fait de manière simple, conviviale et automatique. Il suffit donc de double-cliquer, d’accepter la licence et de se laisser guider jusqu’à la fin. EasyPHP se lancera dès la fin de l’installation et vous proposera de le mettre à jour si nécessaire, ensuite, il commencera à charger les serveurs (Apache et MySQL) et sera immédiatement opérationnel.
1.3 – Qui fait quoi?
Apache, PHP, MySQL etc… vous vous demandez peut-être à quoi correspondent ces sigles, avant de continuer je vous propose un bref tour d’horizon. Pour ceux qui connaissent déjà tout ça je vous invite à passer directement au paragraphe 1.4
Apache est le serveur web en tant que tel. Il écoute sur le port 80 et son rôle est d’envoyer les pages de texte au format HTML et les fichiers joints au logiciel client (navigateur internet) qui se connecte sur le site. C’est le client qui interprétera le code HTML pour afficher la page internet.
PHP signifie « Personnal Home Page : Hypertext Preprocessor », c’est un module qui permet d’utiliser un langage de programmation web plus élaboré. Son code est interprété par le serveur Apache qui se contente de l’envoyer au format HTML. Le client n’a donc pas accès au code PHP mais seulement au résultat de son exécution.
MySQL est une base de donnée, comme les deux logiciels cités précédemment, elle est libre et gratuite (sauf exception). Bien que MySQL soit généralement utilisé en ligne de commande, il existe des instructions PHP permettant d’accéder facilement aux données de ce type de base, c’est pourquoi elle est souvent utilisée dans le cadre de site web dynamiques.
PHPMyAdmin
est un logiciel programmé en langage PHP, c’est donc un outil « web » : on y accède à travers son navigateur internet. Ce logiciel permet d’administrer facilement sa base de donnée MySQL sans avoir recours aux lignes de commandes.
1.4 – Présentation des outils de base
Une fois l’application installée et lancée, on accède à la configuration de chacun des éléments d’EasyPHP en faisant un click droit sur la petite icône du logiciel dans le tray (à côté de l’horloge Windows). On notera qu’un point rouge pulse dessus lorsque les serveurs sont en fonctionnement.
Je vous propose un bref descriptif de ces divers menus avant de revenir dessus plus loin:
- Aide – Divers menu d’aide à l’utilisation d’EasyPHP
- Fichiers de log – Accès aux fichiers de log des différents modules
- Configuration
- EasyPHP – Configuration d’EasyPHP en lui même (service à lancer etc.) (Fig. 5)
- Apache – Fichier de configuration d’Apache (Fichier texte)
- Extension PHP – Choisir les modules d’extension de PHP (Fig. 6)
- PHP – Fichier de configuration de PHP (Fichier texte)
- MySQL – Fichier de configuration de MySQL (Fichier texte)
- PHPMyAdmin – Lancement de PHPMyAdmin (Fig. 7)
- Explorer – Lancer l’explorateur Windows au niveau des fichiers de votre site (Fig. 4)
- Administration – Interface web d’EasyPHP (Fig. 1)
- Web Local – Lancement de votre navigateur sur la page d’accueil de votre site
- Redémarrer – Relancer Apache et MySQL
- Arrêter – Arrêter Apache et MySQL
- Quitter – Quitter EasyPHP
2 – Gérer son serveur Web
2.1 – Où mettre son site web?
L’arborescence des répertoires d’EasyPHP est particulièrement simple. Vous avez, dans Program Files
le répertoire EasyPHP
celui-ci contient tous le nécessaire au bon fonctionnement de ce logiciel.
Votre site internet sera fonctionnel dès lors que vous l’aurez déposé dans le répertoire www
et que vous accéderez à partir de votre navigateur. Par défaut vous n’aurez dedans qu’un seul fichier nomme index.php
que vous devrez supprimé en installant votre site.
Votre site Internet sera accessible localement à l’adresse http://localhost/
et sur le réseau environnant avec http://NomDeVotreOrdinateur/
.
Pour tester le bon fonctionnement de votre serveur web je vous invite à faire les manipulation suivantes:
- Supprimez
index.php
- Ouvrez votre éditeur de texte jEdit par exemple
- Tapez le code suivant:
<?php
echo phpinfo();
?> - Enregistrez le sous
index.php
dans le répertoirewww
- Lancez votre explorateur sur le page http://localhost/ vous devriez voir apparaître le tableau de configuration de PHP.
2.2 – Affiner la configuration d’EasyPHP
Vous pouvez affiner la configuration d’EasyPHP en passant par Configuration
-> EasyPHP
. La configuration par défaut devrait satisfaire beaucoup de personnes. Personnellement j’apprécie le choix de la langue et l’activation ou non des notifications de mise à jour : c’est un bon moyen de savoir si le logiciel est « vivant » ou non.
Vous pouvez aussi, à partir du menu Administration
accéder à l’interface web d’EasyPHP qui permet aussi de contrôler un certain nombre des options du système.
2.3 – Régler PHP
La configuration de PHP se fait, en grande partie, à partir d’un fichier texte (Configuration
-> PHP
) quelque peu hermétique. Cependant, il n’est généralement pas nécessaire de modifier cette configuration sauf au niveau du chargement des modules. Par mesure de simplicité, la configuration du chargement de ces modules peut se faire à travers un menu particulier: (Configuration
-> Extens
).
ion PHP
Si vous voulez configurer ce fichier à la main je vous invite à consulter la documentation officielle de PHP: http://www.php.net/manual/fr/configuration.php.
2.4 – Régler MySQL
MySQL se gère normalement par la ligne de commande mais il est ici possible de réaliser un grand nombre d’opérations de configuration et de maintenance à partir de l’outil PHPMyAdmin.
A ce propos, EasyPHP, dans sa configuration par défaut n’attribue pas de mot de passe au compte root de la base MySQL ce qui est potentiellement dangereux, par conséquent je vous invite à le modifier. Pour ce faire, allez dans le menu Privilèges
de la page d’accueil de PHPMyAdmin sélectionnez le compte « root » et cliquez sur l’icône « changer les privilèges » dans la rubrique « Mot de passe » cochez la case « mot de passe », choisissez en un puis exécuter
.
Pour plus d’information vous pouvez visiter le site officiel de PHPMyAdmin ([->www.phpmyadmin.net]) et, éventuellement, celui de MySQL.
2.5 – Régler Apache
Apache est livré pré-configuré sans outils particulier de configuration. Pour le modifier vous devrez accéder directement au fichier de configuration. La configuration d’Apache nécessite un minimum de connaissance, si vous voulez la modifier, je vous conseille de jeter un oeil sur l’article « Serveur Internet sous Debian » ainsi que sur son site officiel.
3 – Informations connexes
3.1 – Promenez votre site Internet
Depuis la version 1.8 d’EasyPHP il est possible d’installer tout cela sur un clef USB. Pour se faire, copiez tout le répertoire d’installation (environ 50Mo) sur votre clef USB. Pour lancer EasyPHP sur l’hôte il suffira de double cliquer sur son exécutable.
Bien que cette fonctionnalité puisse paraître très « accessoire » je pense qu’elle peut être très utile lorsque l’on veut faire des démonstrations et que l’on ne dispose pas de son matériel à portée de main.
3.2 – EasyPHP et Windows XP SP2
Rassurez-vous, cela fonctionne parfaitement, par contre, si vous devez accéder à votre site à partir d’un autre ordinateur que le votre, pensez à désactiver le firewall au niveau du port 80.
3.3 – Le concurrent: Wamp
Juste à titre informatif, il existe un autre produit très proche de EasyPHP, il s’agit de Wamp ([->http://www.wampserver.com/]), vous pouvez aussi opter pour cette solution. A noter toutefois que ce dernier ne semble pas fonctionnel sur une clef USB et qu’il n’est pas compatible avec Windows 98, son avantage résidant plutôt dans le support de PHP5.
Remerciements: Alexandre Villain et à Benoït Forgeard-Grignon pour leur relecture et leurs commentaires.
Une réponse sur « Le click 'n' go avec EasyPHP »
Une bonne alternative à EasyPHP ou Wamp est aussi Xampplite … non ?
Bien le site …