Installation de l'environnement

Vous allez installer sur un ordinateur tournant sur GNU/Linux un serveur Web et l'interpreteur PHP de manière à pouvoir réaliser des sites Web dynamique.

Pour exécuter du PHP, il faut tout d'abord installer un serveur HTTP et l'interpréteur PHP. Depuis votre terminal:

  1. mettez à jour la liste des paquetages: sudo apt-get update
  2. installez les paquetages pour apache et php: sudo apt-get install apache2 php5
  3. localhost est le nom de votre machine sur son réseau interne et par défaut, apache écoute sur le port 80 (le port standard pour HTTP). Allez donc sur http://localhost/ pour vérifier si l'installation est fonctionnelle.

Il faut maintenant configurer le serveur pour qu'il puisse servir des pages PHP depuis votre compte utilisateur. On suppose ici que votre login est user.

  1. installez le support des pages personnelles pour que Apache aille chercher dans ~user/public_html les pages à l'URL http://localhost/~user: sudo a2enmod userdir
  2. il faut maintenant autoriser l'exécution des scripts PHP depuis les répertoires utilisateurs:
    sudo gedit /etc/apache2/mods-enabled/php5.conf &. La modification à effectuer est décrite en anglais dans ce fichier.
  3. redémarrez le service apache:sudo service apache2 restart. Regardez le terminal pour un éventuel message douteux. Retestez l'URL http://localhost pour vérifier concrêtement le bon fonctionnement d'Apache.
  4. créez le répertoire public_html dans votre répertoire utilisateur (mkdir ~/public_html) et écrivez dans un fichier phpinfo.php, à l'intérieur du répertoire:
    <?php phpinfo(); ?>
  5. consultez http://localhost/~user/phpinfo.php. Si vous voyez une suite de tableaux, la configuration est complète. Sinon vérifiez les étapes précédentes.

À partir de maintenant, tous les fichiers devront être créez dans ~/public_html ou des sous-répertoires pour être visible par Apache. Lorsque une url de la forme http://localhost/~foo/bar.php sera envoyée, Apache ira chercher le fichier bar.php dans le répertoire public_html de l'utilisateur foo.