Seite 1 von 1

Dyn. URL in statische wandeln. Hilft mir mod_rewrite....?

Verfasst: 23.02.2014, 16:19
von Miro71
Ok... Erst suchen dann fragen. hab ich gelesen... :)
Hallo erstmal an alle hier... Zu meinem Problem:

Habe eine Domain die eigentlich nicht viel Inhalt/Infos hat. Das liegt hauptsächlich daran, weil sie sich nur mit dem Ankauf von Spielzeug beschäftigt.... Hätte ich einen Shop hintendran gebs auch mehr zu sehen..

Jetzt hab ich Unterseiten in php geschrieben die sich auf die einzelnen Suchbegriffe beziehen a la:

www.example.com/ankauf-von/?kw=siku
oder genauer: www.example.com/ankauf-von/index.php?kw=siku

Ist natürlich keine schöne URL. Schöner wäre:

www.exmple.com/ankauf-von-siku

Diese Seite existiert natürlich nicht. Meine erste Idee war eine eigene ErrorPage zu erstellen die den Inhalt der dynamischen URL included... Aber irgendwie bekomm ich das geistig wohl nicht hin.

Hilft mir in diesem Fall mod_rewrite? Oder leitet das mod meine falsche URL nur um? Möchte natürlich ganz gern das die Seite beim Benutzer und bei für Google natürlich über die statische URL erreichar und sichtbar ist.

Vielen Dank das Ihr Euch Zeit nimmt... Steh hier iwie total auf den Schlauch... Kann aber auch an gestern Abend liegen :)))

Schönen Sonntag noch, Miro

Verfasst:
von

Verfasst: 23.02.2014, 19:18
von gerd_w
mod_rewrite ist für deinen Bedarf schon die richtige Lösung...

schau mal hier findest du zum Beispiel eine Erklärung

Verfasst: 24.02.2014, 11:14
von Miro71
Erstmal vielen Dank für die schnelle Antwort. Beruhigend zu wissen dass ich hier richtig bin :)

Der Aufbau der RewriteRule ist ja wirklich kompliziert. Aber Dein Link hat mir schon etwas weitergeholfen und etwas Licht in Dunkel gebracht.

Setz das jetzt mal um und gib Bescheid wenn ich Erfolg hab.

Verfasst: 24.02.2014, 11:46
von Miro71
Erste Erfolge :) Kann jetzt die Seite aufrufen:

RewriteRule ^Ankauf-von-([-_0-9a-z]*).html$ Ankauf-von-/index.php?kw=$1 [L]

Folgende Probleme hab ich noch:
1. Es klappt nur mit Kleinbuchstaben. Ankauf-von-siku.html kommt an. Ankauf-von-Siku.html kommt nicht an und landet auf der 404-Errorpage. Wie bekomme ich das auch mit Großbuchstaben hin?

2. Es fehlen mir Sonderzeichen.... z.B: Ankauf-von-1:87.html kommt nicht an. Als URL-Variable war das kein Problem. Ich denke hier hängts aber weil der Doppelpunkt wahrscheinlich dort nicht in eine URL gehört.

3. Wie erlaube ich die Nutzung von Umlauten wie Ankauf-von-Märklin.html? Muss ich Umlaut mit ae statt ä umgehen?

Verfasst: 24.02.2014, 12:07
von Miro71
Hab jetzt wie folgt geändert:

RewriteRule ^Ankauf-von-([-_0-9a-zA-Z]*).html$ Ankauf-von-/index.php?kw=$1 [L]

Großbuchstaben gehen jetzt.

1:87 werd ich wohl in 1zu87 ändern müssen und dann wieder zurückcodieren. Der Doppelpunkt gehört einfach nicht dahin.

Umlaute wie ä werde jetzt in ae umgewandelt. Sieht sowieso schöner in der URL aus.

Danke das Du mich auf den richtigen Weg gebracht hast ;)

Verfasst: 24.02.2014, 16:06
von Kristian
Hallo,

mit den Umlauten liegst du absolut richtig.
1:87 geht, wenn du den ":" mit in die Zeichenklasse aufnimmst.

Code: Alles auswählen

([\-_0-9a-zA-Z\:]*)
Gruß
Kristian

EDIT:
Ich habe mir erlaubt den Bindestrich genauso zu maskieren, wie den Doppelpunkt, da diese normalerweise in der Regex eine Funktion haben. Der Bindestrich funktioniert unmaskiert nur am Anfang oder Ende einer Regex, das ist aber irgendwie krumm.

Verfasst: 25.02.2014, 10:23
von Miro71
Danke... Ja jetzt klappts auch mit dem Doppelpunkt