Verzahnte RewriteRules um alte URLs zu vermeiden?
Verfasst: 17.08.2010 15:15
Wäre super, wenn jemand den Knoten zum platzen bringt. Ich habe schon einiges probiert, aber drehe mich immer im Kreis.
Auf einer Domain werden Produkte durch ein PHP-Script aufgerufen, z.B.:
http://www.mydomain.com/product.php?id=888
Im Sinne der SEO benutze ich folgende RewriteRule damit man die Seite durch Eingabe von mydomain.com/888.html aufrufen kann.
Das Problem:
In grauer Vorzeit wurden das Produkt 8888 durch ein Perl-Script aufgerufen:
http://www.mydomain.com/cgi-bin/product.pl?prod=8888
Diese alten URLs sollten aufgefangen werden. Ich kriege es auch hin, daß diese PERL-URLs durch das neue PHP-Script ausgeführt wird:
Allerdings steht dann in der Addresszeile:
http://www.mydomain.com/product.php?id=888
Mein Ziel:
Dass in der Addresszeile bei Eingabe der alten Perl- URL letztlich http://www.mydomain.com/888.html steht und die alten Scriptpfade aus dem kollektiven Gedächtnis der Menschheit getilgt werden. Hoffe, das geht überhaupt..
Vielen Dank schon mal.
Auf einer Domain werden Produkte durch ein PHP-Script aufgerufen, z.B.:
http://www.mydomain.com/product.php?id=888
Im Sinne der SEO benutze ich folgende RewriteRule damit man die Seite durch Eingabe von mydomain.com/888.html aufrufen kann.
Code: Alles auswählen
RewriteRule ^([-a-zA-Z0-9_]+)\.html$ /product.php?id=$1 [L]
In grauer Vorzeit wurden das Produkt 8888 durch ein Perl-Script aufgerufen:
http://www.mydomain.com/cgi-bin/product.pl?prod=8888
Diese alten URLs sollten aufgefangen werden. Ich kriege es auch hin, daß diese PERL-URLs durch das neue PHP-Script ausgeführt wird:
Code: Alles auswählen
RewriteCond %{QUERY_STRING} ^product=([0-9a-zA-Z_-]*)$
RewriteRule ^cgi-bin/product.pl$ /product.php?product=%1 [R,L]
http://www.mydomain.com/product.php?id=888
Mein Ziel:
Dass in der Addresszeile bei Eingabe der alten Perl- URL letztlich http://www.mydomain.com/888.html steht und die alten Scriptpfade aus dem kollektiven Gedächtnis der Menschheit getilgt werden. Hoffe, das geht überhaupt..
Vielen Dank schon mal.