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 № 1Sie 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.