Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

Redirect-Problem bei Leerzeichen in der URL

Hier können Sie Ihre Fragen zum Thema Suchmaschinenoptimierung (SEO) / Positionierung stellen
Neues Thema Antworten
ulinho
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 10.03.2008, 11:14

Beitrag von ulinho » 10.03.2008, 11:19

Hi zusammen,
nach langwierigen Suchen bin ich dann doch nicht um einen neuen Thread herum gekommen.

Folgendes Problem:
In den Webmaster-Tools bekomme ich eine nicht gefundene Seite mit einem Leerzeichen (%20) in der URL zurück. Ein redirect permanent, mit den Leerzeichen durch %20 ersetzt, funktioniert nicht, genauso wenig natürlich der redirect mit einem Leerzeichen.

Gibt es einen Trick, um trotzdem eine permanente Weiterleitung zu setzen?

Danke,
ulinho

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


chris21
PostRank 9
PostRank 9
Beiträge: 2758
Registriert: 10.04.2005, 18:17

Beitrag von chris21 » 10.03.2008, 13:49

Leerzeichen sind leider immer etwas knifflig.

Versuche mal, eine RewriteRule mit RewriteCond einzusetzen, und dabei an der Stelle des Leerzeichens ein "\ " zu verwenden, also ein Leerzeichen, bei dem durch den Backslash die Sonderzeichenbewertung aufgehoben wird. Dies funktioniert zumindest bei mir.

Beispiel:

Code: Alles auswählen

RewriteCond %{REQUEST_URI} /ausdruck\ mit\ leerzeichen
RewriteRule (.*) http://www.example.com
Dann sollte ein Aufruf von www.example.com/ausdruck%20mit%20leerzeichen auf die Startseite umgelenkt werden.

ulinho
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 10.03.2008, 11:14

Beitrag von ulinho » 10.03.2008, 14:07

Hi chris21,
hab deinen Tipp schon aus diesem Thread in abgewandelter Form entnommen, hat aber leider auch bei mir nicht funktioniert. Ebenso die Version von oben.
Trotzdem Danke

chris21
PostRank 9
PostRank 9
Beiträge: 2758
Registriert: 10.04.2005, 18:17

Beitrag von chris21 » 10.03.2008, 16:30

Hhm, da müsste man mal schauen, warum das mod_rewrite-Modul auf Deinem Server/Webspace das anders handhabt als bei dem Server, wo ich es getestet habe. Vielleicht arbeitet z.B. das mod_rewrite Modul unter Apache 1.3xxx anders als unter Apache 2.0xx ? (Wobei allerdings die Seite aus dem von Dir verlinktem Thread auch auf einem Apache 2.054 liegt).

Ansonsten kannst Du auch versuchen, dass Leerzeichen über \x20 einzufangen, also

Code: Alles auswählen

RewriteCond %{REQUEST_URI} /ausdruck(\x20)mit(\x20)leerzeichen
RewriteRule (.*) http://www.example.com 
Funktioniert im Test auf einem Server bei all-inkl.com ebenso wie obiger Vorschlag.

ulinho
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 10.03.2008, 11:14

Beitrag von ulinho » 10.03.2008, 17:02

Dieses Leerzeichen macht mich noch kirre. Diese Version funzt auch nicht, Apache ist wie im Beispiel-Thread auch 2.054

chris21
PostRank 9
PostRank 9
Beiträge: 2758
Registriert: 10.04.2005, 18:17

Beitrag von chris21 » 10.03.2008, 17:07

Jo, mod_rewrite kann schon verrückt machen. Besonders eben Sonderzeichen in URLs.

Als Variante hätte ich noch \u0020 statt \x20 anzubieten. Leider weiß ich eben nicht, wie Dein Apache konfiguriert ist bzgl. Charsets u.ä.

Funktioniert mod_rewrite denn sonst?

Z.B.:

Code: Alles auswählen

RewriteCond %{REQUEST_URI} /google
RewriteRule (.*) http://www.google.de
Wird da bei Aufruf von deinedomain.tld/google/ auf www.google.de umgeleitet?

ulinho
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 10.03.2008, 11:14

Beitrag von ulinho » 10.03.2008, 19:01

mod_rewrite funktioniert sonst wunderbar, damit gibt's soweit keine Probleme. Die Variante mit u0020 werde ich morgen testen und hier Rückmeldung geben.
Vielen Dank für die Hilfe soweit!

ulinho
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 10.03.2008, 11:14

Beitrag von ulinho » 11.03.2008, 08:55

Moin!
Hab jetzt alles durch, nichts funktioniert. Mit (\x20) und nur Backslash bekommt mein Browser ne 404 zurück, mit \u0020 einen Serverfehler.

Edit: Die Lösung des Problems ist eigentlich so simpel:
redirect permanent "/url mit leerzeichen" https://www.blubb.de/url-ohne-leerzeichen

Auf jeden Fall funzt es mit Leerzeichen, genauso mit Umlauten.

chris21
PostRank 9
PostRank 9
Beiträge: 2758
Registriert: 10.04.2005, 18:17

Beitrag von chris21 » 11.03.2008, 13:50

Hi,

schön, dass es funktioniert.

Das man einen Suchstring mit Anführungszeichen begrenzen kann, war mir neu (ohne die Anführungszeichen würde es ja zu einem Internal Server Error führen).

Das \u0020 führt bei mir übrigens auch zu einem Internal Server Error.

Kann es sein, dass Du auf einem Apache 1.3xx arbeitest und nicht auf einem 2.0xx ?

Anscheinend gibt es Unterschiede, ob Sonderzeichen für die interne Weiterverarbeitung escaped werden oder nicht.

Bei Umlauten habe ich z.B. gerade festgestellt, dass eine Regel wie

Code: Alles auswählen

RewriteCond %{REQUEST_URI} /sch(\ö)ner-leben.html
RewriteRule (.*) http://www.example.com [R=301]
bei Aufruf mit Firefox 2.0xx durchgeführt wird, bei Aufruf mit IE 7 aber nicht. :o

Das Gleiche gilt für schöner-leben.html oder sch(\xF6)ner-leben.html.

Sehr komisch.

ulinho
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 10.03.2008, 11:14

Beitrag von ulinho » 11.03.2008, 15:03

Apache/2.0.54 (Debian GNU/Linux)
Definitiv ne 2.0xx ;-)
Mich hat die ganze Geschichte auch ganz verrückt gemacht, aber die Weiterleitung mit der "Gänsefüßchen-Variante" funktioniert bei mir mit IE7 und FF 2.0.0.12.
Die Wege des Herrn sind unergründlich :D

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag