/ / Ist meine Regex / htaccess-Syntax korrekt? - regex, .htaccess, mod-rewrite

Ist meine Regex / htaccess-Syntax korrekt? - regex, .htaccess, mod-rewrite

Ich beschloss schließlich, in die wunderbare Welt der Regulären Ausdrücke einzutauchen.

Grundsätzlich ist mein Ziel zu

Browser sendet:

http://example.com/search/Bombay

Apache übersetzt dies:

http://example.com/search/?city=Bombay

Mein Regelversuch ist folgendes:

RewriteRule ^search/([^/.]+)/?$ search/?city=$1

Wäre dies der richtige Weg, dies zu tun? Gibt es irgendwelche guten Orte, um mehr über Regex zu erfahren?

Danke im Voraus

Antworten:

1 für die Antwort № 1

Sie versuchen, in dieser Regex zu viel Übereinstimmung zu finden. Ich würde gehen

RewriteRule ^search/([^/]+)/?$ search/?city=$1 [NC,L]

Beachten Sie auch, dass ich das hinzugefügt habe NC Flag ohne Groß- / Kleinschreibung und L Letztes Flag bedeutet, dass ein Benutzer die URL eingibtin gemischten oder Großbuchstaben dann wird es immer noch übereinstimmen, auch wenn es übereinstimmt, hört auf den Zugriff auf die Datei htaccess und gehen mit dem, was Sie gerade abgestimmt haben.

Versuchen Sie, hier etwas darüber zu erfahren http://www.regular-expressions.info/ oder ein anständiges Buch bekommen.

Auch sollten Sie diese Dinge wirklich ausprobieren, bevor Sie hier posten.