2009-06-08 6 views
0

Je suis en train de convertir toutes les demandes dans le format:Réécrire une demande si oui ou non le fichier demandé existe

/portfolio/picturename.htm 

('portefeuille' est constant)

à ceci:

/?picturename 

Donc (merci aux utilisateurs ici) J'ai cette solution qui fonctionne pour les fichiers qui n'existent pas:

Options +FollowSymlinks 
RewriteEngine on 
RewriteRule ^portfolio/(.+)\.htm$ /?$1 [R,NC,L] 

Mais: Comment est-ce que cela s'applique également aux fichiers qui existent? J'aimerais que la redirection se produise en toutes circonstances.

Répondre

2

Cela devrait fonctionner pour tous les fichiers, qu'ils existent ou non. RewriteRule ne vérifie pas l'existence du fichier, RewriteCond le fait. Publiez-vous le contenu complet de votre fichier .htaccess, ou seulement la partie que vous jugez importante?

+0

Roel. Merci pour ça, ça m'a fait revenir en arrière et vérifier mon htaccess ... et commenter une partie qui était en train de débloquer les choses lors de la mise en œuvre des suggestions précédentes. –

2

Il n'y a rien à propos de ce RewriteRule qui le rendrait uniquement applicable aux fichiers qui n'existent pas. Il en aurait besoin avant cela pour cette condition:

RewriteCond %{REQUEST_FILENAME} !-f 
Questions connexes