2011-09-23 6 views
1

je besoin d'une aide ici avec des expressions régulières .htaccess. Je veux transmettre cette url: www.aloha.com/foo/bar/sample.html-www/aloha/foo/bar/index.php?go=sample.htaccess rewriterule de transmettre le dossier spécifique

J'ai essayé d'utiliser

RewriteRule /foo/bar/^(.*)?.html /foo/bar/index.php?go=$1 [L]

mais ça ne marche pas.

J'ai aussi déjà une autre règle de réécriture qui entrent en conflit avec cette règle. C'est pourquoi j'ai besoin de créer une autre règle pour ce dossier spécifique.

RewriteRule^(. *) ?. html index.php? Entrée = $ 1 [L]

+0

Essayez de supprimer la barre oblique initiale hors des deux côtés – 472084

Répondre

1
RewriteRule ^foo/bar/(.*?)\.html$ /foo/bar/index.php?go=$1 [L] 

Une partie de votre syntaxe était hors de propos. Par exemple, le ^ indique le début ou une négation d'une classe de caractères. En outre, je suppose que vous voulez un nom de fichier, donc n'utilisez pas la capture optionnelle ?.

Enfin, je fait la capture non avide. Je vous encourage à aller plus loin et à être plus précis dans votre capture.

Par exemple:

RewriteRule ^foo/bar/([^/]+)\.html$ /foo/bar/index.php?go=$1 [L]