Zur Navigation

mod_rewrite: Website gezügelt

Weiterleiten der alten URL

1 Adrian (Gast)

Guten Nachmittag

Mittels Google bin ich in diesem Forum gelandet, welches sehr aktiv ist. Freut mich!

Vielleicht kann mir jemand weiterhelfen:

Ausgangslage:
- Ich habe eine neue Website erstellt, wobei der alte Inhalt (CMS1) ins neue CMS2 überführt wurde
- Gleichzeitig hat die Domain geändert

Problemstellung:
Gerne möchte ich jetzt die URL gemäss CMS1 (domain1) auf die neue URL gemäss CMS2 (domain2) weiterleiten.

Bsp. CMS1/domain1
http://www.domain1.net/html/modules.php?mop=modload&name=ModuleName&file=news&action=details&idnr=960&subkat=2010

Oder auch: CMS1/domain1
http://www.domain1.net/html/modules.php?name=ModuleName&subkat=2010&action=details&idnr=960&file=news

Neu. CMS2/domain2
http://www.domain2.ch/clubdesk/www?show=news&p=1000059&action=newsDetails&idnr=960

Lösungsansatz
Wenn in domain1 im QueryString die Zeichenkette "file=news" vorkommt, dann soll aus der Zeichenkette "idnr=960" die Zahl ausgelesen und an die neue domain2 übergeben werden.

Rewrite Rule
RewriteCond %{QUERY_STRING} ^&idnr=([0-9]{1,})$
RewriteRule ^modules\.php$ http://www.domain2.ch/clubdesk/www?show=news&p=1000059&action=newsDetails&idnr=$1 [L,R=301]

Und hier ecke ich nun an. Die RewriteCond funktioniert so nicht.

Hat jemand eine Idee?


30.03.2013 13:52

2 Jörg

In der RewriteCond solltest du die Begrenzungszeichen ^ und $ weglassen:

RewriteCond %{QUERY_STRING} &idnr=([0-9]{1,})

... denn der Query String enthält vorne und hinten ja noch weitere Zeichen

Ein geklammerter Ausdruck aus einer RewriteCond wird nicht mit $1, $2 etc., sondern mit %1, %2 etc. wieder aufgenommen

http://www.domain2.ch/clubdesk/www?show=news&p=1000059&action=newsDetails&idnr=%1

30.03.2013 15:14

3 Adrian (Gast)

Wunderbar! Es scheint zu funktionieren! Mal noch ein paar Tage laufen lassen, und schauen, was Google daraus macht.

Vielen Dank!

31.03.2013 16:55

Beitrag schreiben (als Gast)





[BBCode-Hilfe]