2010-08-19 10 views
1

Je ne suis pas très familier avec l'expression régulière, mais on me demande de modifier une règle de réécriture de lighttpd.Aide sur Regex. Règle de réécriture de Lighttpd

url.rewrite = (
    "^/(.+)/?$" => "/index.php/$1" 
) 

Je veux exclure un chemin du motif gourmand ci-dessus, de sorte qu'il ne retombera pas à index.php.

En mots, c'est simple: Faites correspondre autre chose que "statistiques". Mais je ne pouvais juste pas le faire correctement en regex.

Par exemple:

  • http://www.foo.com/anything/index.php/anything
  • http://www.foo.com/statistics/statistics/index.php

Voulez-vous s'il vous plaît me montrer un indice pour y parvenir?

Merci!

Répondre

6

Vous souhaitez probablement utiliser un lookahead négatif. Quelque chose comme

"^/(?!statistics)(.+)/?$" => "/index.php/$1" 

Et alors vous aurez besoin d'une règle supplémentaire pour les statistiques