Faire une réécriture ou une redirection que si le fichier existe

  Information

Pour qu'une RewriteRule ne s'applique que si le script existe il faut ajouter une condition testant la variable REQUEST_FILENAME.

Comme exemple il y a une redirection qui permet d'appeler un script qui fait la compression des fichiers texte avant de les envoyer. Pour utiliser ce bout de code il faut donc vérifier que le fichier existe pour pouvoir le compresser.

  code source classé dans  .HTACCESS

 
 01    
 02    
 03    
 04    
 05    
 06    
 07    
 08    
 09    
 10    
 11    
 12    
 13    
 14    
 15    
 16    
                               
/*
Titre : Faire une réécriture ou une redirection que si le fichier existe

URL : https://phpsources.net/code_s.php?id=731
Date édition : 10 Mai 2008
Date mise a jour : 18 Aout 2019

Rapport de la maj:
- fonctionnement du code vérifié
*/
/*---------------------------------------------------------------*/
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*).(css|js|kml|txt|html)$
/compresse.php?fichier=$1.$2&extension=$2 [L]

   Un petit merci aux auteurs pour leur travail, ça ne coûte rien et ça fait toujours plaisir wink

 Autres snippets qui pourraient vous intéressez

Faire un Refresh avec la fonction header()

Compatibilité : PHP 5, PHP 7, PHP 8

Les META REFRESH sont à bannir en HTML car trop souvent utilisés par de nombreux webmasters. Utiliser la fonction header()

Concaténer des images pour faire des sprites CSS

Compatibilité : PHP 5, PHP 7, PHP 8

Concaténer plusieurs images dans une seule image pour utiliser le CSS sprite. Il est possible d'afficher l'image directement ou de la sauvegarder.

Indique si 1 répertoire existe sinon il le créer

Compatibilité : PHP 5, PHP 7, PHP 8

Mentionne si un répertoire existe. Cela peut s'avérer utile lorsque l'on doit gérer beaucoup de dossiers.

Compte le nombre de fois qu'un caractère existe

Compatibilité : PHP 5, PHP 7, PHP 8

Compte le nombre de fois qu'un caractère prédéfini existe dans une chaine. Il propose 2 fonctions.

Vérifier si une table existe dans une base de données

Compatibilité : PHP 4, PHP 5

Une fonction qui vérifie l'existence d'une table dans une base données. Code compatible php 4 et php 5

* Requêtes exécutées avec Recherche Contextuelle

  Derniers scripts PHP / MySQL

TwitterOAuth PHP Library pour API REST de Twitter 8.1.1

Script PHP / MySQL
Langue langue en
Date 08 Fév 2026
Taille 0.03 Mo
Catégorie Social-network

DokuWiki 2025-05-14b

logo DokuWiki
Langue langue en
Date 07 Fév 2026
Taille 4 Mo
Catégorie Wiki

WordPress 6.4.1

logo WordPress
Langue langue fr
Date 05 Fév 2026
Taille 34 Mo
Catégorie Blogs

PrestaShop 9.0.2-2.1

logo PrestaShop
Langue langue fr
Date 02 Fév 2026
Taille 116 Mo
Catégorie Ecommerce

  10 Mai 2008

Information sur les mises à jour

Dernière mise à jour :

    18 Aout 2019
    fonctionnement du code vérifié

9 646 Vues
Compatibilité du code
PHP 5, 7 et 8+
58 codes

Catégorie :  .HTACCESS

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 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
Définir le charset par défaut
Désactiver l'option MultiViews : une url est accessible avec et sans extension
Déplacer une arborescence sur une autre url
Désactiver la signature du serveur
Empêche une réécriture de boucler
Empêcher l'accès avec www.
Eviter de recharger des pages statiques en indiquant une expiration dans 100 ans
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 n'existe pas
Faire une réécriture ou une redirection que si le fichier existe
Force la redirection en HTTPS
Forcer l'accès en français si aucune langue n'est sélectionnée
Forcer la redirection de index.html vers /
Gérer l'accès au site selon l'heure
Gestion de cache par fichier .htaccess
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 /
Protéger un répertoire avec un mot de passe chez FREE
Protection contre les attaques de hacker avec register global on
Protection d'un répertoire avec un mot de passe
Réécrire des sous-domaines vers le domaine principal avec une variable
Réécriture de sous-domaine vers un répertoire du domaine principal
Règle de réécriture avec plus de 9 paramètres
Réécriture si la requete ne correspond pas à 1 répertoire
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
Referrer bloquer le spam
Renommer l'url et les paramètres avec une redirection 301
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