Préparer ses pages perso sur son propre ordinateur : pourquoi et comment ?

Les Pages Perso Chez Free

Par albert, le , dans Créer ses pages perso. / Dernière modification : le par Al.
Tags : Apache, MySQL, PHP, PostgreSQL, Tutoriaux

Il arrive de temps à autre qu'un personaute voie son site suspendu, ou plus souvent renvoyé dynamiquement sur le redoutable serveur « perso99 », parce qu'il abuse de ressources au point de ralentir le(s) serveur(s) qu'il sollicite. Il arrive aussi qu'un site soit suspendu parce qu'incomplet, son titulaire l'écrivant par parties en testant successivement les fonctionnalités, ce qui est louable mais peut, là encore, causer des abus involontaires de ressources.

Pour éviter cela, le concepteur d'un site qui souhaite contrôler quelque peu la consommation de ressources (disque, bande passante, CPU) ou tester des fonctionnalités peut avoir un intérêt à le développer localement sur son ordinateur.

Comment fait-on ?

Introduction

Les moyens pour se créer un serveur Web/PHP/SQL ne manquent pas au personaute. Cependant, avant de se lancer, il faut savoir que l'on ne peut pas se créer un serveur qui soit 100% identique à ceux de Free, car s'il s'agit de logiciels communément disponibles (Apache, PHP, MySQL, PostgreSQL) ils sont néanmoins modifiés par rapport à leurs versions disponibles aux personautes. Toutefois, on peut approcher suffisamment la configuration de Free pour pouvoir tester et évaluer la charge de son site sans avoir trop de surprises une fois le site recopié sur le compte Free.

Ce billet vise à présenter au lecteur les moyens existants pour se constituer un serveur local. C'est une introduction et une référence de base, mais vous n'y trouverez pas de détails trop techniques pour les raisons suivantes :

  1. Quelqu'un qui a un problème pointu risque fort d'être tombé sur une subtilité rare et complexe, qui nécessitera moins de l'information que du diagnostic, ce qui se fera infiniment mieux sur le forum Usenet proxad.free.services.pagesperso qu'ici ;
  2. Plus on va vers le détail et plus l'information devient éphémère. Si ce billet détaillait trop les solutions, il risquerait de devenir rapidement obsolète et pire, trompeur, au fur et à mesure que les solutions évolueraient.

C'est pourquoi vous ne trouverez pas ici de guides d'installation des logiciels concernés, ou de mentions spécifiques de configuration des serveurs Free. En revanche, vous trouverez les liens vers les sites d'origine des logiciels et les sources officielles d'information, de sorte à pouvoir, au moment où vous lirez ce billet, accéder à l'information la plus récente.

Les moyens disponibles

Fondamentalement, et quel que soit votre système d'exploitation, vous avez besoin d'un serveur Apache, d'un serveur (My)SQL et d'un interprète PHP. Le tout constitue dans le jargon du domaine un « xAMP », le x valant W pour Windows (donc WAMP), L pour Linux (donc LAMP), et ainsi de suite. Ces termes sont devenus une désignation générale pour toute solution Apache/MySQL/PHP ; parfois, les produits spécifiques reprennent cette désignation (ex : WampServer), parfois non (ex : EasyPHP).

Sous Linux/Unix/Mac, votre distribution vous propose certainement Apache, PHP et MySQL ou PostgreSQL dans les paquetages disponibles, quand elle ne vous les a pas installés par défaut. Sous Windows, qui ne les intègre pas, il faut des solutions tierces. En voici quelques-unes, expérimentées par les contributeurs de proxad.free.services.pagesperso :

  • Pour Windows : WampServer, qui fournit Apache, MySQL et PHP. Facile d'installation, facile à étendre à un réseau local ; EasyPHP ; ZMWS, qui a la particularité de ne pas avoir à s'installer mais ne convient pas, faute de pouvoir gérer les fichiers .htaccess qu'emploient la plupart des sites Free (et d'autres) ;
  • Pour Mac ; MAMP ou un tutoriel de MacGé pour Mac OS X (jusqu'à 10.7) et Mac OS X 10.8 ;
  • Pour Linux : XAMP ou LAMP ;
  • Pour FreeBSD, NetBSD, et autre BSD : FAMP.

La configuration des serveurs de Free

Pour configurer ces outils au plus près de leurs homologues chez Free, il est bien sûr nécessaire de connaître la configuration utilisée par Free. Pour cela, vous pouvez opérer comme suit. Supposons que votre site perso s'appelle « xyz.free.fr ». Ouvrez une invite de commande (sous Windows) ou un shell / une console sous Linux et tapez ping xyz.free.fr : vous obtiendrez dans la réponse le « petit nom » perso000-g0.free.fr du serveur qui abrite votre site en ce moment. Par exemple, à l'heure où ce billet est rédigé, le site Les Pages Perso Chez Free est hébergé sur perso151-g5.free.fr. Il vous reste à visiter http://perso000-g0.free.fr/info.php pour connaître la configuration du serveur : version d'Apache, de MySQL, de PostgreSQL, modules PHP 4 disponibles, options de configuration… Comme Free fournit aussi PHP 5, vous pouvez aller voir http://perso000-g0.free.fr/info.php5.

La configuration du serveur local

Maintenant que vous avez la configuration du serveur de Free qui vous abrite (et qui est, sauf accident, la même sur tous les serveurs de Free), il vous reste à configurer au plus près votre propre serveur. Comme dit en introduction, ce billet ne va pas entrer dans les détails de ces opérations ; à l'heure actuelle, il ne va même pas entrer dans les grandes lignes… Entre-temps, vous pouvez aller poser vos questions sur le forum proxad.free.services.pagesperso !

Les serveurs web de Free utilisent par défaut la version 4.4.3 de php. Pour utiliser php 5.1.3, il est important de placer une directive spécifique (php 1) dans le fichier .htaccess à la racine de votre compte. Cette directive entrainera une erreur 500 sur votre serveur local. Pour éviter cet inconvénient et utiliser un fichier .htaccess « passe-partout » via une balise <IfDefine> :

<IfDefine Free>
php 1
</IfDefine>

Les limitations du serveur local

Votre serveur local aura beau être configuré exactement comme ceux de Free, il restera quand même différent sur au moins un point : la bande passante entre vous et lui, qui sera toujours bien supérieure à celle de Free puisque vous et le serveur local êtes sur la même machine. De la discussion qui a mené à ce billet n'est pas (encore) ressorti un moyen de simuler facilement cette limitation, ce qui empêche de pouvoir estimer la réactivité du site : pour cela, il vous faudra envoyer votre site chez Free et constater sur pièce.

Remerciements

… à Cartomi, papabct, Dominique, Larry, Olivier et tous ceux qui ont contribué à la matière de ce billet, et surtout Nan'Art pour sa patiente persévérance !