1 votes

htaccess .html exception de réécriture

Ok les gars, je dois ajouter une exception ! Comment puis-je le faire ? J'utilise actuellement RewriteRule ([^.]+).html $1 [R=301,L] pour réécrire toutes les urls .html

J'ai besoin de l'exception pour le fichier de vérification google.html. Comment puis-je définir cette exception ?

J'ai essayé mais ça ne marche pas. Avez-vous des idées ?
RewriteCond $1 !^(google022e525bdb654772.html|googleb5e92d18c6640aeb.html)/?

et j'ai essayé

RewriteCond $1 !^(google022e525bdb654772.html|googleb5e92d18c6640aeb.html)

3voto

miceuz Points 1429

Ce que vous avez ne fonctionne pas parce que les rétro-références (comme les $1 ) dans un RewriteCond se réfèrent à des groupes dans le dernier appariement RewriteCond plutôt que le RewriteRule .

Essayez plutôt ce qui suit :

RewriteCond %{REQUEST_URI} !^/google(022e525bdb654772|b5e92d18c6640aeb)\.html
RewriteRule ([^.]+).html $1 [R=301,L]

0voto

Phil P Points 3020

Les réécritures sont traitées dans l'ordre. Placez une réécriture qui n'apporte aucun changement, mais qui se déclare comme étant la dernière réécriture, avant vos réécritures normales.

Il n'est généralement pas bon d'alourdir les réécritures avec des informations sur ce dont elles ne traitent pas, qui doivent être lues au-delà, alors que vous pouvez plutôt traiter les exceptions et les éliminer.

RewriteRule ^/google022e525bdb654772.html$  -  [L]
RewriteRule ^/googleb5e92d18c6640aeb.html$  -  [L]
RewriteRule ([^.]+).html $1 [R=301,L]

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X