Gestion de cache par fichier .htaccess

      Information

La gestion de cache se fait en sauvegardant les pages html dynamiques pour ne pas les recalculer à chaque accès. Pour cela, nous allons sauvegarder nos page dans un répertoire /cache. Par exemple l'url http://www.example.com/une-page.html va être mémorisée en cache dans /cache/une-page.html.
La sauvegarde de la page dans le cache n'est pas décrite ici mais vous pouvez trouver un exemple de gestion de cache en php sur Phpsources.org.
Quand il faut mettre à jour les fichiers en cache, il suffit juste de les supprimer. Une tache cron peut facilement faire ce travail.
Nous allons voir maintenant comment gérer avec notre fichier .htaccess l'envoi de la page en cache quand elle existe et faire une réécriture vers le script qui génère la page si elle n'existe pas. On commence par une condition pour tester si le fichier existe en cache.
   Code source classé dans  HTACCESS

 
 01    
 02    
 03    
 04    
 05    
 06    
 07    
 08    
 09    
 10    
 11    
 12    
 13    
 14    
 15    
 16    
 17    
 18    
 19    
 20    
                               
/****************************************************/
/*
     Titre : Gestion de cache par fichier .htaccess                                                                       
                                                                                                                          
     URL   : https://phpsources.net/code_s.php?id=759
     Auteur         : administrateur                                                                                      
     Date edition   : 26 Mai 2008                                                                                         
*/
/*****************************************************/
RewriteEngine on

# si le fichier existe en cache
RewriteCond %{DOCUMENT_ROOT}/cache%{REQUEST_URI} -f
# affiche le contenu en cache
RewriteRule (.+).html$ /cache/ $1.html [L]

# si le fichier n’existe pas en cache on génère la page
RewriteRule (.+).html$ /index.php?page=$1 [L]

Autres snippets


Gestion des pages en cache

Compatibilité : PHP 4, PHP 5, PHP 7

Ce script contient les fonctions pour la gestion du cache. Si la date HTTP_IF_MODIFIED_SINCE est renseignée et que le cache n'a pas été modifié

Blocage d'une adresse IP avec le fichier .htaccess

 

Il arrive que certaines adresses IP génèrent trop de requêtes et saturent le serveur. Il est possible de les bloquer en utilisant le .htaccess

Bloquer des sites qui spam - version php et .htaccess

 

Pour stopper des sites qui spamment la meilleure solution est de prendre le code .htaccess car il s'installe facilement.


  • Merci de signaler tout problème rencontré avec ce code

L'ajout de commentaire est libre et ne demande pas d'inscription

[1]

  • avatar

    Invité

    04 Jan 2010 à 14:47

    Super simple et efficace

Suivez PHP Sources sur Twitter !

PHP débutant et initié 50 Tutoriel

Présentation de PHP

  Derniers scripts PHP

Apache 2.4.41

logo Apache
Langue langue us
Date  hier
Taille 7 Mo
Catégorie Apache

ZwiiCMS 9.2.04

logo ZwiiCMS
Langue langue fr
Date  hier
Taille 3 Mo
Catégorie CMS

Bolt 3.6.10

logo Bolt
Langue langue us
Date  hier
Taille 23 Mo
Catégorie CMS

EspoCRM 5.6.11

logo EspoCRM
Langue langue us
Date 14 Aout
Taille 40 Mo
Catégorie CRM
avatar

administrateur

  26 Mai 2008

  SOURCE   Télécharger
1225,6 Vues

loader gifCompatibilité du code

Les versions PHP en cours

PHP 5+
PHP 7+
86 codes

Catégorie :  HTACCESS

Afficher une page différente suivant l'heure
Ajouter un logo en filigrane sur vos images et vos photos
Anti spam à partir des urls qui spamment
Appliquer une condition à  plusieurs règles de réécriture
Augmenter les performances avec AllowOverride
Autoriser l'accès qu'a certaines extensions
Blocage d'une adresse IP avec le fichier .htaccess
Bloquer des sites qui spam - version php et .htaccess
Bloquer l'accès à certaines extensions de fichier
Bloquer l'accès au site pour le navigateur libwww-perl
Bloquer l'accés selon l'heure
Bloquer le hacking avec le script errors.php
Bloquer les hackers utilisant le script booth.php
Bloquer les proxy appspot.com
Bloquer les requetes de hacker avec %3Cstring%3E
Bloquer les user agent (navigateur) indésirables
Comment mettre du code php avec une extension html
Compression automatique des pages
Corriger automatiquement les petites erreurs de saisie des urls
Corriger la faille touchant mambo via image_upload.php
Définir le charset par défaut
Déplacer une arborescence
Désactiver l'option MultiViews : une url est accessible avec et sans extension
Désactiver la signature du serveur
Empeche le hack via wamp_dir/setup/yesno.phtml
Empeche une réécriture de boucler
Empecher de visualiser les fichiers .htaccess et .htpasswd
Empecher l'accès avec www.
Empecher le hack via admin.php
Empecher le hack via admin_smilies.php
Empecher le hack via aedatingCMS.php
Empecher le hack via bbs.lib.inc.php
Empecher le hack via gestion_sondage.php
Empecher le hack via mosConfig_absolute_path
Empecher le hack via setup/header.php
Empecher le hack via sitemap.php
Empecher les attaques par include de fichier externe
Eviter de recharger des pages statiques en indiquant une expiration dans 100 ans
Eviter la faille de sécurité de joomla (mosDirectory)
Eviter les attaques par le script send_reminders.php
Faire une réécriture ou une redirection que si la requàªte ne correspond pas à  un répertoire ou un fichier existant
Faire une réécriture ou une redirection que si la requête ne correspond pas à un répertoire existant
Faire une réécriture ou une redirection que si le fichier existe
Faire une réécriture ou une redirection que si le fichier n'existe pas
Force HTTPS
Forcer l'accès en francais si aucune langue n'est sélectionnée
Forcer la redirection de index.html vers /
Gestion de cache par fichier .htaccess
Inclusion de fichiers distants avec un script de HITWEB
Interdire l'accès à un répertoire sans fichier index
Interdire l'affichage de vos images sur un autre site
Maitriser l'affichage du contenu du répertoire en cas d'absence d'index
Mettre les images, flash,... en cache plus longtemps
Modifier le type MIME (Content-Type) pour un flux rss
Obliger l'accès avec index.php et rediriger l'accès par /
Protection contre la faille de sécurité de info.inc.php
Protection contre la faille de sécurité de stats.inc.php
Protection contre le hack avec 404.php
Protection contre les attaques de hacker avec register global on
Protection d'un répertoire avec un mot de passe
Protection d'un répertoire avec un mot de passe sur free
Recevoir un mail quand vos photos sont affichées sur un site inconnu
Redirection d'un ancien nom de domaine vers un nouveau nom de domaine
Redirection d'un répertoire vers un sous domaine
Redirection d'une arborescence vers une page unique
Redirection https vers http ou http vers https, redirection page sécurisée SSL/TLS
Redirection massive avec le sous domaine (www)
Redirection pour une maintenance de votre site
Redirige tout un repertoire d'un domaine principale vers un sous-domaine
Rediriger la racine d'un site vers un répertoire
Rediriger tout en gardant l'url d'origine
Rediriger tout un répertoire vers la racine
Rediriger un domaine vers un autre et suivre dans Google analytics
Rediriger une page vers une url contenant la date du jour
Réécrire des sous-domaines vers le domaine principal avec une variable
Réécriture de sous-domaine vers un répertoire du domaine principal
Referrer bloquer le spam
Règle de réécriture avec plus de 9 paramètres
Renommer l'url et les paramètres avec une redirection 301
Se protéger du hacking avec admin.php et include_path
Sécurisation de votre site avec phpbb (phpbb_root_path)
Substituer vos images si elles sont affichées sur un autre site
Tester les réécritures d'url en local sur un PC avec WampServer
Tracking des liens du bouton J'aime de Facebook dans Analytics
Vulnérabilité par inclusion de fichier distant avec smarty.php
Vulnérabilité touchant webcalendar via tools/send_reminders.php