Apache Rewrite si le fichier existe

Si offline.html existe dans le répertoire racine, réécrivez-le.

J’ai créé le fichier .htaccess suivant et l’ai placé dans le répertoire racine:

 RewriteCond offline.html -f RewriteRule ^(.*) /offline.html [L] 

Pour une raison quelconque, cela ne fonctionne pas. Qu’est-ce que j’oublie ici?

Cette condition échouera toujours:

 RewriteCond offline.html -f 

car -f besoin du chemin complet du fichier que vous vérifiez.

Vous pouvez utiliser %{DOCUMENT_ROOT} (variable interne Apache pointant vers la racine de votre site Web) avant le nom de fichier que vous vérifiez pour créer un chemin complet:

 RewriteCond %{DOCUMENT_ROOT}/offline.html -f RewriteRule ^ offline.html [L] 

Vous pouvez utiliser:

 RewriteCond %{DOCUMENT_ROOT}/offline.html -f RewriteRule ^(.*) /offline.html [L]