Seite 1 von 1

Trennzeichen in URL

Verfasst: 27.08.2008, 12:38
von linkadler
Wie schön öfters in diesem Forum beschrieben, sollte man auf den Unterstrich als Trennzeichen in der URL verzichten, da Google diesen als Zeichen interpretiert und aus mehreren Wörtern ein "langes Wort" macht.

Big Problem:
Mehrere tausend URLs einer Domain mit Unterstrichen (statt Bindestrichen) im Index.
Bsp: domain/traumreise_in_den_westen_der_usa,13257,25741.html

Hunderte interne statische Links auf URLs mit Unterstrich.

Kennt wer eine .htaccess Lösung, die mit 301 Weiterleitung immer auf die idente URL mit Bindestrichen weiterleitet.

domain/traumreise_in_den_westen_der_usa,13257,25741.html -> domain/traumreise-in-den-westen-der-usa,13257,25741.html

domain/noch_ein_beitrag,11111,22222.html -> domain/noch-ein-beitrag,11111,22222.html

usw...

Danke für Eure Hilfe!

Verfasst:
von

Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

Re: Trennzeichen in URL

Verfasst: 27.08.2008, 13:22
von Mork vom Ork
linkadler hat geschrieben:Kennt wer eine .htaccess-Lösung, die mit 301-Weiterleitung immer [von Unterstrich-URL] auf die identischee URL mit Bindestrichen weiterleitet.
Das könnte sich mit regulären Ausdrücken (mod_rewrite) machen lassen, aber wegen des Aufwandes möchtest du lieber ein Skript schreiben, um wirklich nur diejenigen URLs in Angriff zu nehmen, die es nötig haben:

In /.htaccess:

Code: Alles auswählen

RewriteEngine on
RewriteBase /
RewriteRule _ tollesbindestrichskript.php [L]
In /tollesbindestrichskript.php:

Code: Alles auswählen

<?php
header&#40;"HTTP/1.0 301 Bindestriche gibt's hier"&#41;;
header&#40;"Location&#58; http&#58;//example.com" . strtr&#40;$_SERVER&#91;"REDIRECT_URL"&#93;, "_", "-"&#41;&#41;;
?>
(Das PHP-Skript ist nur ein Beispiel und lässt sich natürlich durch eines in jeder anderen Sprache ersetzen.)

RewriteRule fängt jedwede URL ab, die mindestens einen Unterstrich aufweist, und leitet sie (serverintern) an das Skript weiter. Hier werden dann alle Unter- durch Bindestriche ersetzt (strtr() mit CGI-Variable REDIRECT_URL) und mittels 301/Location an die neue, unterstrichlose URL weitergeleitet.

Verfasst: 27.08.2008, 13:36
von Southmedia
Perfekte Lösung Mork vom Ork.

Verfasst:
von

Verfasst: 27.08.2008, 16:12
von Mork vom Ork
Southmedia hat geschrieben:Perfekte Lösung Mork vom Ork.
Fünfmaaak ;)

Grazie

Verfasst: 28.08.2008, 08:46
von linkadler
Danke Mork vom Ork!!