Cours 17 - Découpage d’une application Web

Objectifs

Déroulement

  1. Introduction
  2. Faire exercice 17

Informations diverses

Fichier .htaccess

Un fichier .htaccess est un fichier de configuration pour les serveurs web Apache, utilisé pour contrôler divers paramètres du serveur au niveau du dossier dans lequel le fichier est placé. Imaginez-le comme un garde qui peut appliquer des règles spécifiques à un certain espace dans un musée. Voici quelques-unes de ses utilisations clés, simplifiées :

  1. Réécriture d'URL : Il peut transformer des URL complexes en versions plus simples et conviviales. C'est comme changer une adresse longue et compliquée en quelque chose de facile à retenir.

  2. Redirection : Il peut rediriger les visiteurs de votre site d'une vieille page vers une nouvelle, assurant que même si le contenu bouge, les visiteurs trouvent ce qu'ils cherchent. Imaginez rediriger quelqu'un vers la bonne pièce quand une exposition d'art déménage.

  3. Sécurité : .htaccess peut restreindre l'accès à certaines parties de votre site, soit en demandant un mot de passe, soit en limitant l'accès à certaines adresses IP. C'est comme avoir un garde qui vérifie les invitations à l'entrée d'une salle privée.

  4. Gestion d'erreurs personnalisées : Il peut personnaliser les messages d'erreur que les visiteurs voient, par exemple lorsqu'ils demandent une page qui n'existe pas. Au lieu d'une page d'erreur générique, vous pourriez avoir une page qui s'aligne sur le thème de votre site et guide l'utilisateur vers des pages utiles.

  5. Performance : Il peut être utilisé pour améliorer la vitesse de chargement de votre site en activant des fonctionnalités comme la compression des fichiers ou en définissant des entêtes de cache. C'est comme optimiser les chemins à travers le musée pour que les visiteurs puissent voir les expositions plus rapidement.

En somme, un fichier .htaccess offre un contrôle fin sur le comportement de votre site web, vous permettant de le sécuriser, de le rendre plus convivial et efficace sans avoir à modifier la configuration globale du serveur. C'est un outil puissant dans la boîte à outils du développeur web pour peaufiner l'expérience du visiteur et la gestion du site.

Code .htacccess

Ce code doit être copié dans .htaccess en bas complètement du fichier

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^/*([A-Za-z0-9-]+)/?$ index.php?page=$1 [NC,QSA,L]
</IfModule>

Si le fichier n'existe pas dans votre projet, vous devez le créer!

Code de index.php

<?php
//Porte d'entrée de mon application
//Bootstrap = démarrage de l'application web
define('DOCROOT', $_SERVER['DOCUMENT_ROOT']);

require DOCROOT."/includes/config.php";
require DOCROOT."/includes/debug.php";
require DOCROOT."/includes/functions.php";

if(isset($_GET["page"])){
    $filename =  DOCROOT."/pages/".$_GET["page"].".php";

    if (file_exists($filename)) {
        require DOCROOT."/pages/".$_GET["page"].".php";
    } else {
        header("Location: 404.html");
    }
}else{
    require DOCROOT."/pages/accueil.php";
}